<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<meta name="generator" content="Doxygen 1.8.17"/>
<meta name="viewport" content="width=device-width, initial-scale=1"/>
<title>Win32k: client.c 文件参考</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Win32k
   </div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- 制作者 Doxygen 1.8.17 -->
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
var searchBox = new SearchBox("searchBox", "search",false,'搜索');
/* @license-end */
</script>
<script type="text/javascript" src="menudata.js"></script>
<script type="text/javascript" src="menu.js"></script>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(function() {
  initMenu('',true,false,'search.php','搜索');
  $(document).ready(function() { init_search(); });
});
/* @license-end */</script>
<div id="main-nav"></div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
/* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&amp;dn=gpl-2.0.txt GPL-v2 */
$(document).ready(function(){initNavTree('a00026.html',''); initResizable(); });
/* @license-end */
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#nested-classes">结构体</a> &#124;
<a href="#define-members">宏定义</a> &#124;
<a href="#typedef-members">类型定义</a> &#124;
<a href="#func-members">函数</a> &#124;
<a href="#var-members">变量</a>  </div>
  <div class="headertitle">
<div class="title">client.c 文件参考</div>  </div>
</div><!--header-->
<div class="contents">
<div class="textblock"><code>#include &quot;<a class="el" href="a03620_source.html">precomp.h</a>&quot;</code><br />
</div>
<p><a href="a00026_source.html">浏览源代码.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a>
结构体</h2></td></tr>
<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01793.html">_HANDLENODE</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
宏定义</h2></td></tr>
<tr class="memitem:ab9a6e7c8c7a31497ad2aab59eccdbfe6"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ab9a6e7c8c7a31497ad2aab59eccdbfe6">CCH_KL_LIBNAME</a>&#160;&#160;&#160;256</td></tr>
<tr class="separator:ab9a6e7c8c7a31497ad2aab59eccdbfe6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a129c6ec17fae777c58c438effb08b90d"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a129c6ec17fae777c58c438effb08b90d">CCH_KL_ID</a>&#160;&#160;&#160;16</td></tr>
<tr class="separator:a129c6ec17fae777c58c438effb08b90d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb6cef9b9912c174a04f435c3d289591"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afb6cef9b9912c174a04f435c3d289591">GETCCP_SIZE</a>&#160;&#160;&#160;8</td></tr>
<tr class="separator:afb6cef9b9912c174a04f435c3d289591"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afab2ba434c2e8270eede610539dee8b9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afab2ba434c2e8270eede610539dee8b9">SW_FLAG_RC</a>&#160;&#160;&#160;(SW_SCROLLWINDOW | SW_INVALIDATE | SW_ERASE | SW_SCROLLCHILDREN)</td></tr>
<tr class="separator:afab2ba434c2e8270eede610539dee8b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a246cef21d8f236cea2d990af9baf5772"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a246cef21d8f236cea2d990af9baf5772">SW_FLAG_NRC</a>&#160;&#160;&#160;(SW_SCROLLWINDOW | SW_INVALIDATE | SW_ERASE)</td></tr>
<tr class="separator:a246cef21d8f236cea2d990af9baf5772"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a763cdb0985d5d3030736a303a16c0809"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a763cdb0985d5d3030736a303a16c0809">NSIZEPRELOAD</a>&#160;&#160;&#160;(4*sizeof(WCHAR))</td></tr>
<tr class="separator:a763cdb0985d5d3030736a303a16c0809"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abcd53e1f447bf113f860c89d2bfe25d9"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#abcd53e1f447bf113f860c89d2bfe25d9">NSZKLKEY</a>&#160;&#160;&#160;sizeof(<a class="el" href="a00026.html#aed7c462c6c2968b207b5cc5808996709">szKLKey</a>)+16</td></tr>
<tr class="separator:abcd53e1f447bf113f860c89d2bfe25d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a>
类型定义</h2></td></tr>
<tr class="memitem:a3f48d75b4d50ad2c13e699967cfd0894"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="a01793.html">_HANDLENODE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a3f48d75b4d50ad2c13e699967cfd0894">HANDLENODE</a></td></tr>
<tr class="separator:a3f48d75b4d50ad2c13e699967cfd0894"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13b3159b78c3ae9b626dac0705adc748"><td class="memItemLeft" align="right" valign="top">typedef <a class="el" href="a00026.html#a3f48d75b4d50ad2c13e699967cfd0894">HANDLENODE</a> *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a></td></tr>
<tr class="separator:a13b3159b78c3ae9b626dac0705adc748"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
函数</h2></td></tr>
<tr class="memitem:a71c35d9f06f56484a40c1ba2a9536ce7"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a71c35d9f06f56484a40c1ba2a9536ce7">WOWGetIdFromDirectory</a> (PBYTE presbits, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> rt)</td></tr>
<tr class="separator:a71c35d9f06f56484a40c1ba2a9536ce7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a37382336eed0bd5a1649061ecdb801a8"><td class="memItemLeft" align="right" valign="top">HBITMAP&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a37382336eed0bd5a1649061ecdb801a8">WOWLoadBitmapA</a> (HINSTANCE hmod, LPCSTR lpName, LPBYTE pResData, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> cbResData)</td></tr>
<tr class="separator:a37382336eed0bd5a1649061ecdb801a8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1bf5f7e9d7c16c57be8b9132131866be"><td class="memItemLeft" align="right" valign="top">HMENU&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a1bf5f7e9d7c16c57be8b9132131866be">WowServerLoadCreateMenu</a> (HANDLE hMod, LPTSTR lpName, CONST LPMENUTEMPLATE pmt, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> cb, BOOL fCallClient)</td></tr>
<tr class="separator:a1bf5f7e9d7c16c57be8b9132131866be"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa9ce9abee64d83ba417fcae251e0301d"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aa9ce9abee64d83ba417fcae251e0301d">GetFullUserHandle</a> (WORD wHandle)</td></tr>
<tr class="separator:aa9ce9abee64d83ba417fcae251e0301d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f200b0221109fec737f647797c02e26"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a> (LCID, LCTYPE)</td></tr>
<tr class="separator:a7f200b0221109fec737f647797c02e26"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2f3f8240aef66cfffbe5af70aea9a02"><td class="memItemLeft" align="right" valign="top">HANDLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ae2f3f8240aef66cfffbe5af70aea9a02">WOWFindResourceExWCover</a> (HANDLE hmod, LPCWSTR rt, LPCWSTR lpUniName, WORD LangId)</td></tr>
<tr class="separator:ae2f3f8240aef66cfffbe5af70aea9a02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afff345d574f0444f665bdb716596ed87"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afff345d574f0444f665bdb716596ed87">BringWindowToTop</a> (HWND hwnd)</td></tr>
<tr class="separator:afff345d574f0444f665bdb716596ed87"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a430d8f19eb8d2a931d93610d51bb1ce1"><td class="memItemLeft" align="right" valign="top">HWND&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a430d8f19eb8d2a931d93610d51bb1ce1">ChildWindowFromPoint</a> (HWND hwndParent, POINT point)</td></tr>
<tr class="separator:a430d8f19eb8d2a931d93610d51bb1ce1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9ff2d0cce0b9ea5ae8942ec1ef67d88b"><td class="memItemLeft" align="right" valign="top">HICON&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9ff2d0cce0b9ea5ae8942ec1ef67d88b">CopyIcon</a> (HICON hicon)</td></tr>
<tr class="separator:a9ff2d0cce0b9ea5ae8942ec1ef67d88b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a64c6c5afd434f481fba43538cf27881a"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a64c6c5afd434f481fba43538cf27881a">AdjustWindowRect</a> (LPRECT lprc, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> style, BOOL fMenu)</td></tr>
<tr class="separator:a64c6c5afd434f481fba43538cf27881a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5576d0eb14d4f40cbb997515a3a801fa"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5576d0eb14d4f40cbb997515a3a801fa">TranslateAcceleratorW</a> (HWND hwnd, HACCEL hAccel, LPMSG lpMsg)</td></tr>
<tr class="separator:a5576d0eb14d4f40cbb997515a3a801fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a69c249578f9e6bec733d175125fc5fb2"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a69c249578f9e6bec733d175125fc5fb2">TranslateAcceleratorA</a> (HWND hwnd, HACCEL hAccel, LPMSG lpMsg)</td></tr>
<tr class="separator:a69c249578f9e6bec733d175125fc5fb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5361d8c9ee2d1ddd9b99a8e597ed6d6"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af5361d8c9ee2d1ddd9b99a8e597ed6d6">DeleteClientClipboardHandle</a> (HANDLE hobjDelete, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFormat)</td></tr>
<tr class="separator:af5361d8c9ee2d1ddd9b99a8e597ed6d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a419502c690ecadea2ef606382c5cd028"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a419502c690ecadea2ef606382c5cd028">ClientEmptyClipboard</a> (void)</td></tr>
<tr class="separator:a419502c690ecadea2ef606382c5cd028"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a92c7de5d770222c5cbf2d979150635e5"><td class="memItemLeft" align="right" valign="top">HANDLE WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a92c7de5d770222c5cbf2d979150635e5">GetClipboardData</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uFmt)</td></tr>
<tr class="separator:a92c7de5d770222c5cbf2d979150635e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a058d192a0c32454f80d8926c79b6573e"><td class="memItemLeft" align="right" valign="top">HANDLE WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a058d192a0c32454f80d8926c79b6573e">SetClipboardData</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wFmt, HANDLE hMem)</td></tr>
<tr class="separator:a058d192a0c32454f80d8926c79b6573e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a990fc53bf57a2ce03ea38241c456e161"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a990fc53bf57a2ce03ea38241c456e161">SetDeskWallpaper</a> (IN LPCSTR pString OPTIONAL)</td></tr>
<tr class="separator:a990fc53bf57a2ce03ea38241c456e161"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae35231899b6d8b4a5e8d23b23b458104"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ae35231899b6d8b4a5e8d23b23b458104">ReleaseDC</a> (HWND hwnd, HDC hdc)</td></tr>
<tr class="separator:ae35231899b6d8b4a5e8d23b23b458104"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5aee5ca8759f64eb8474e823a50a7318"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5aee5ca8759f64eb8474e823a50a7318">ToAscii</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wVirtKey, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wScanCode, PBYTE lpKeyState, LPWORD lpChar, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wFlags)</td></tr>
<tr class="separator:a5aee5ca8759f64eb8474e823a50a7318"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a14e612b936b7c1118f87699a34646921"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a14e612b936b7c1118f87699a34646921">ToAsciiEx</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wVirtKey, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wScanCode, PBYTE lpKeyState, LPWORD lpChar, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wFlags, HKL hkl)</td></tr>
<tr class="separator:a14e612b936b7c1118f87699a34646921"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a54fe797d3bdb1ef1c5b0fad7204107d7"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a54fe797d3bdb1ef1c5b0fad7204107d7">ScrollDC</a> (HDC hDC, int dx, int dy, CONST RECT *lprcScroll, CONST RECT *lprcClip, HRGN hrgnUpdate, LPRECT lprcUpdate)</td></tr>
<tr class="separator:a54fe797d3bdb1ef1c5b0fad7204107d7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad7edcb25b9838bbab81702e8370e259a"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ad7edcb25b9838bbab81702e8370e259a">DrawIcon</a> (HDC hdc, int x, int y, HICON hicon)</td></tr>
<tr class="separator:ad7edcb25b9838bbab81702e8370e259a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abfee4a9912184ce8c841fe748dcaf1ee"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#abfee4a9912184ce8c841fe748dcaf1ee">DrawIconEx</a> (HDC hdc, int x, int y, HICON hIcon, int cx, int <a class="el" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> istepIfAniCur, HBRUSH hbrFlickerFreeDraw, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> diFlags)</td></tr>
<tr class="separator:abfee4a9912184ce8c841fe748dcaf1ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aba49f368717847cbda022df52ddc1061"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aba49f368717847cbda022df52ddc1061">ExcludeUpdateRgn</a> (HDC hDC, HWND hWnd)</td></tr>
<tr class="separator:aba49f368717847cbda022df52ddc1061"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae71a433c15cfe941766e3b6ff35d177f"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ae71a433c15cfe941766e3b6ff35d177f">InvalidateRgn</a> (HWND hWnd, HRGN hRgn, BOOL bErase)</td></tr>
<tr class="separator:ae71a433c15cfe941766e3b6ff35d177f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab0ca070931dc1cd00d30b75d1c148969"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ab0ca070931dc1cd00d30b75d1c148969">ValidateRgn</a> (HWND hWnd, HRGN hRgn)</td></tr>
<tr class="separator:ab0ca070931dc1cd00d30b75d1c148969"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa96bc2d65ca263ad0b2d37af7186851c"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aa96bc2d65ca263ad0b2d37af7186851c">CreateCaret</a> (HWND hWnd, HBITMAP hBitmap, int nWidth, int nHeight)</td></tr>
<tr class="separator:aa96bc2d65ca263ad0b2d37af7186851c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a241ecf6da64b39f0d713f93ac33a6186"><td class="memItemLeft" align="right" valign="top">int WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a241ecf6da64b39f0d713f93ac33a6186">GetUpdateRgn</a> (HWND hWnd, HRGN hRgn, BOOL bErase)</td></tr>
<tr class="separator:a241ecf6da64b39f0d713f93ac33a6186"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca82c10708133cfb8aea7bfebf06c9eb"><td class="memItemLeft" align="right" valign="top">HDC WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aca82c10708133cfb8aea7bfebf06c9eb">GetDCEx</a> (HWND hwnd, HRGN hrgnClip, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> flags)</td></tr>
<tr class="separator:aca82c10708133cfb8aea7bfebf06c9eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7f703776b6aae0ac60ad5c80821cf4a7"><td class="memItemLeft" align="right" valign="top">BOOL WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a7f703776b6aae0ac60ad5c80821cf4a7">ScrollWindow</a> (HWND hwnd, int dx, int dy, CONST RECT *prcScroll, CONST RECT *prcClip)</td></tr>
<tr class="separator:a7f703776b6aae0ac60ad5c80821cf4a7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af11d60bede87cb5b4feff1565e3755c7"><td class="memItemLeft" align="right" valign="top">void WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af11d60bede87cb5b4feff1565e3755c7">SwitchToThisWindow</a> (HWND hwnd, BOOL fAltTab)</td></tr>
<tr class="separator:af11d60bede87cb5b4feff1565e3755c7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6bbea9ef48fa0e96ab73abc0f7ee8f9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a6bbea9ef48fa0e96ab73abc0f7ee8f9e">WaitForInputIdle</a> (HANDLE hProcess, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwMilliseconds)</td></tr>
<tr class="separator:a6bbea9ef48fa0e96ab73abc0f7ee8f9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4c8b3ee5d9ada44761edd3441739b188"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a4c8b3ee5d9ada44761edd3441739b188">MsgWaitForMultipleObjects</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> nCount, LPHANDLE pHandles, BOOL fWaitAll, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwMilliseconds, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwWakeMask)</td></tr>
<tr class="separator:a4c8b3ee5d9ada44761edd3441739b188"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a36cf1c3bd6b43137f1fe76c1e0c0ed71"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a36cf1c3bd6b43137f1fe76c1e0c0ed71">MsgWaitForMultipleObjectsEx</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> nCount, LPHANDLE pHandles, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwMilliseconds, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwWakeMask, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags)</td></tr>
<tr class="separator:a36cf1c3bd6b43137f1fe76c1e0c0ed71"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9be26eaf6bb4ba7bef6f896caabfd8db"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9be26eaf6bb4ba7bef6f896caabfd8db">InnerGrayStringAorW</a> (HDC hdc, HBRUSH hbr, GRAYSTRINGPROC lpfnPrint, LPARAM lParam, int cch, int x, int y, int cx, int <a class="el" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, BOOL bAnsi)</td></tr>
<tr class="separator:a9be26eaf6bb4ba7bef6f896caabfd8db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a910f21781ee934e72bed5dfe6ec00e7c"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a910f21781ee934e72bed5dfe6ec00e7c">GrayStringA</a> (HDC hdc, HBRUSH hbr, GRAYSTRINGPROC lpfnPrint, LPARAM lParam, int cch, int x, int y, int cx, int <a class="el" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>)</td></tr>
<tr class="separator:a910f21781ee934e72bed5dfe6ec00e7c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5c3dcd8260d9b4f64985f09da647d4bc"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5c3dcd8260d9b4f64985f09da647d4bc">GrayStringW</a> (HDC hdc, HBRUSH hbr, GRAYSTRINGPROC lpfnPrint, LPARAM lParam, int cch, int x, int y, int cx, int <a class="el" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>)</td></tr>
<tr class="separator:a5c3dcd8260d9b4f64985f09da647d4bc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a256c67e34cd5746c21213c7d1a6a5a58"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a256c67e34cd5746c21213c7d1a6a5a58">GetUserObjectSecurity</a> (HANDLE hObject, PSECURITY_INFORMATION pRequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> nLength, LPDWORD lpnLengthRequired)</td></tr>
<tr class="separator:a256c67e34cd5746c21213c7d1a6a5a58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d99bc75fc4fddf957954271d0f1f54f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a7d99bc75fc4fddf957954271d0f1f54f">SetUserObjectSecurity</a> (HANDLE hObject, PSECURITY_INFORMATION pRequestedInformation, PSECURITY_DESCRIPTOR pSecurityDescriptor)</td></tr>
<tr class="separator:a7d99bc75fc4fddf957954271d0f1f54f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a958833fa2704c99de02a921c738a72ce"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a958833fa2704c99de02a921c738a72ce">GetUserObjectInformationA</a> (HANDLE hObject, int nIndex, PVOID pvInfo, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> nLength, LPDWORD pnLengthNeeded)</td></tr>
<tr class="separator:a958833fa2704c99de02a921c738a72ce"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adcd27bceb3499bb7ba614750b143c278"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#adcd27bceb3499bb7ba614750b143c278">CommonCreateWindowStation</a> (PUNICODE_STRING pstrName, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwReserved, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:adcd27bceb3499bb7ba614750b143c278"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a13e8fadd3ac9636b62cb53f1c8a07fbc"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a13e8fadd3ac9636b62cb53f1c8a07fbc">CreateWindowStationA</a> (LPSTR pwinsta, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwReserved, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:a13e8fadd3ac9636b62cb53f1c8a07fbc"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af7244f3066e54931182de80200f0e85d"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af7244f3066e54931182de80200f0e85d">CreateWindowStationW</a> (LPWSTR pwinsta, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwReserved, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:af7244f3066e54931182de80200f0e85d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a28b722aaf4a4881ff619be64522129e1"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a28b722aaf4a4881ff619be64522129e1">CommonOpenWindowStation</a> (PUNICODE_STRING pstrName, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:a28b722aaf4a4881ff619be64522129e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2deb9e129153d02e34ffe3976d43f224"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a2deb9e129153d02e34ffe3976d43f224">OpenWindowStationA</a> (LPSTR pwinsta, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:a2deb9e129153d02e34ffe3976d43f224"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a88bf83ad0cf99d4468797ef5ed2d8207"><td class="memItemLeft" align="right" valign="top">HWINSTA&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a88bf83ad0cf99d4468797ef5ed2d8207">OpenWindowStationW</a> (LPWSTR pwinsta, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:a88bf83ad0cf99d4468797ef5ed2d8207"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aac98e7e264e1a510f68f831a29570a9b"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aac98e7e264e1a510f68f831a29570a9b">CommonCreateDesktop</a> (PUNICODE_STRING pstrDesktop, PUNICODE_STRING pstrDevice, LPDEVMODEW pDevmode, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:aac98e7e264e1a510f68f831a29570a9b"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab46511b933a17b7a82e4b64b4f5c9f65"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ab46511b933a17b7a82e4b64b4f5c9f65">CreateDesktopA</a> (LPSTR pDesktop, LPSTR pDevice, LPDEVMODEA pDevmode, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:ab46511b933a17b7a82e4b64b4f5c9f65"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a27cf4f7bdd3823eb223dcb9fb8955cbf"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a27cf4f7bdd3823eb223dcb9fb8955cbf">CreateDesktopW</a> (LPWSTR pDesktop, LPWSTR pDevice, LPDEVMODEW pDevmode, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</td></tr>
<tr class="separator:a27cf4f7bdd3823eb223dcb9fb8955cbf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c4833589a236b8903a861fe19222918"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a6c4833589a236b8903a861fe19222918">CommonOpenDesktop</a> (PUNICODE_STRING pstrDesktop, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:a6c4833589a236b8903a861fe19222918"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa1c2ca50d464ad80e60109c9148b52b5"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aa1c2ca50d464ad80e60109c9148b52b5">OpenDesktopA</a> (LPSTR pdesktop, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:aa1c2ca50d464ad80e60109c9148b52b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aec87a1b0409d0184b7c1b4121c3d60f2"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aec87a1b0409d0184b7c1b4121c3d60f2">OpenDesktopW</a> (LPWSTR pdesktop, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, BOOL fInherit, ACCESS_MASK amRequest)</td></tr>
<tr class="separator:aec87a1b0409d0184b7c1b4121c3d60f2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7a0f877b51caf12ba6afbafbdf6dfa88"><td class="memItemLeft" align="right" valign="top">ATOM WINAPI&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a7a0f877b51caf12ba6afbafbdf6dfa88">RegisterClassWOWA</a> (WNDCLASSA *lpWndClass, LPDWORD pdwWOWstuff)</td></tr>
<tr class="separator:a7a0f877b51caf12ba6afbafbdf6dfa88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa6e0925d19bd41f4b0be4a22d97e2031"><td class="memItemLeft" align="right" valign="top">WORD&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aa6e0925d19bd41f4b0be4a22d97e2031">WowGetDefWindowProcBits</a> (PBYTE pDefWindowProcBits, WORD cbDefWindowProcBits)</td></tr>
<tr class="separator:aa6e0925d19bd41f4b0be4a22d97e2031"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aa85f959552d2ff6f5d39ea079eec8fe2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aa85f959552d2ff6f5d39ea079eec8fe2">UserRegisterWowHandlers</a> (APFNWOWHANDLERSIN apfnWowIn, APFNWOWHANDLERSOUT apfnWowOut)</td></tr>
<tr class="separator:aa85f959552d2ff6f5d39ea079eec8fe2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44b100b9bc713eb0be0cfd01dfa502c4"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a44b100b9bc713eb0be0cfd01dfa502c4">WOWDlgInit</a> (HWND hwndDlg, LONG lParam)</td></tr>
<tr class="separator:a44b100b9bc713eb0be0cfd01dfa502c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a533305c1632500cf84e422c082a05a75"><td class="memItemLeft" align="right" valign="top">HANDLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a533305c1632500cf84e422c082a05a75">GetEditDS</a> ()</td></tr>
<tr class="separator:a533305c1632500cf84e422c082a05a75"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a2d4538cf91b620d726b371b191d26023"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a2d4538cf91b620d726b371b191d26023">ReleaseEditDS</a> (HANDLE h)</td></tr>
<tr class="separator:a2d4538cf91b620d726b371b191d26023"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a44d5c2db04811e044da712dd588b5e02"><td class="memItemLeft" align="right" valign="top">LONG&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a44d5c2db04811e044da712dd588b5e02">DispatchClientMessage</a> (<a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a> pwnd, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> message, WPARAM wParam, LPARAM lParam, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> pfn)</td></tr>
<tr class="separator:a44d5c2db04811e044da712dd588b5e02"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5e3947a37f580989ee3e96f0d037b5b2"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5e3947a37f580989ee3e96f0d037b5b2">ArrangeIconicWindows</a> (HWND hwnd)</td></tr>
<tr class="separator:a5e3947a37f580989ee3e96f0d037b5b2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3fa9f8101f890e00fab52c9bf1057e8f"><td class="memItemLeft" align="right" valign="top">HANDLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a3fa9f8101f890e00fab52c9bf1057e8f">BeginDeferWindowPos</a> (int nNumWindows)</td></tr>
<tr class="separator:a3fa9f8101f890e00fab52c9bf1057e8f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c11b195faadcd0bacfc803faedc64f0"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a6c11b195faadcd0bacfc803faedc64f0">EndDeferWindowPos</a> (HDWP hWinPosInfo)</td></tr>
<tr class="separator:a6c11b195faadcd0bacfc803faedc64f0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af335215811e4eabeecff335569c85100"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af335215811e4eabeecff335569c85100">CascadeChildWindows</a> (HWND hwndParent, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> nCode)</td></tr>
<tr class="separator:af335215811e4eabeecff335569c85100"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3839e358fb91652391fce2512727776e"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a3839e358fb91652391fce2512727776e">CloseClipboard</a> (VOID)</td></tr>
<tr class="separator:a3839e358fb91652391fce2512727776e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:acc38930a85ebbcb0cadc3fa2f7485a4d"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#acc38930a85ebbcb0cadc3fa2f7485a4d">CloseWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:acc38930a85ebbcb0cadc3fa2f7485a4d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a574ca013bc708be1606b8e2ceaebd74d"><td class="memItemLeft" align="right" valign="top">HMENU&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a574ca013bc708be1606b8e2ceaebd74d">CreateMenu</a> ()</td></tr>
<tr class="separator:a574ca013bc708be1606b8e2ceaebd74d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac90ccfafcadfa1ac0ce5bda1b49ba9d5"><td class="memItemLeft" align="right" valign="top">HMENU&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ac90ccfafcadfa1ac0ce5bda1b49ba9d5">CreatePopupMenu</a> ()</td></tr>
<tr class="separator:ac90ccfafcadfa1ac0ce5bda1b49ba9d5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8e46209cec406469685858ff0ac2bad5"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a8e46209cec406469685858ff0ac2bad5">CurrentTaskLock</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> hlck)</td></tr>
<tr class="separator:a8e46209cec406469685858ff0ac2bad5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3aa5c95fd0d2389c177b9db1d5b93799"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a3aa5c95fd0d2389c177b9db1d5b93799">DestroyCaret</a> ()</td></tr>
<tr class="separator:a3aa5c95fd0d2389c177b9db1d5b93799"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adc89923b3853de7ea5c658831193f408"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#adc89923b3853de7ea5c658831193f408">DirectedYield</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwThreadId)</td></tr>
<tr class="separator:adc89923b3853de7ea5c658831193f408"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5a97dec9640e654c0d5aa4dc67fd2bc6"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5a97dec9640e654c0d5aa4dc67fd2bc6">DrawMenuBar</a> (HWND hwnd)</td></tr>
<tr class="separator:a5a97dec9640e654c0d5aa4dc67fd2bc6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9b7186ac4e2f1789214665161276b02e"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9b7186ac4e2f1789214665161276b02e">EmptyClipboard</a> ()</td></tr>
<tr class="separator:a9b7186ac4e2f1789214665161276b02e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeb67af6aa06ffff99546c1cec33aaddf"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aeb67af6aa06ffff99546c1cec33aaddf">EnableWindow</a> (HWND hwnd, BOOL bEnable)</td></tr>
<tr class="separator:aeb67af6aa06ffff99546c1cec33aaddf"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afb7910312d044e7d6f90677e1153b13c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afb7910312d044e7d6f90677e1153b13c">EnumClipboardFormats</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> fmt)</td></tr>
<tr class="separator:afb7910312d044e7d6f90677e1153b13c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af3535f1517b0704ab41081333d8c5594"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af3535f1517b0704ab41081333d8c5594">FlashWindow</a> (HWND hwnd, BOOL bInvert)</td></tr>
<tr class="separator:af3535f1517b0704ab41081333d8c5594"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ac111102a51dd610a87b3844828b68781"><td class="memItemLeft" align="right" valign="top">long&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ac111102a51dd610a87b3844828b68781">GetDialogBaseUnits</a> ()</td></tr>
<tr class="separator:ac111102a51dd610a87b3844828b68781"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af2642c18b5eec2a9c0cb78c01cc2ca0d"><td class="memItemLeft" align="right" valign="top">HDESK&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af2642c18b5eec2a9c0cb78c01cc2ca0d">GetInputDesktop</a> ()</td></tr>
<tr class="separator:af2642c18b5eec2a9c0cb78c01cc2ca0d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abda4e18bc1d4bbbe57358e8e3e63f48c"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#abda4e18bc1d4bbbe57358e8e3e63f48c">GetKeyboardType</a> (int nTypeFlags)</td></tr>
<tr class="separator:abda4e18bc1d4bbbe57358e8e3e63f48c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af41f6eb420ba7bc6a4a862c8980b9f4c"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af41f6eb420ba7bc6a4a862c8980b9f4c">GetMessagePos</a> ()</td></tr>
<tr class="separator:af41f6eb420ba7bc6a4a862c8980b9f4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a742b2c488929da67cd43d26f26f85e20"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a742b2c488929da67cd43d26f26f85e20">GetQueueStatus</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> flags)</td></tr>
<tr class="separator:a742b2c488929da67cd43d26f26f85e20"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8b7ca844be3572943ea049c1462582e0"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a8b7ca844be3572943ea049c1462582e0">KillSystemTimer</a> (HWND hwnd, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> nIDEvent)</td></tr>
<tr class="separator:a8b7ca844be3572943ea049c1462582e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a29d737f3a0cc139181cdbb3c6b63da33"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a29d737f3a0cc139181cdbb3c6b63da33">LoadRemoteFonts</a> (void)</td></tr>
<tr class="separator:a29d737f3a0cc139181cdbb3c6b63da33"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0f9ce03ba6a710019a96f91ca99c1ab0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0f9ce03ba6a710019a96f91ca99c1ab0">LoadLocalFonts</a> (void)</td></tr>
<tr class="separator:a0f9ce03ba6a710019a96f91ca99c1ab0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a3cb22926bc104cab20cbb79f96e7ab7a"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a3cb22926bc104cab20cbb79f96e7ab7a">MessageBeep</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wType)</td></tr>
<tr class="separator:a3cb22926bc104cab20cbb79f96e7ab7a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0948ee79a3cdfac5f2521eff92191900"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0948ee79a3cdfac5f2521eff92191900">OpenIcon</a> (HWND hwnd)</td></tr>
<tr class="separator:a0948ee79a3cdfac5f2521eff92191900"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65206c1977c14a1a73ecfa42f53bbda7"><td class="memItemLeft" align="right" valign="top">HWND&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a65206c1977c14a1a73ecfa42f53bbda7">GetShellWindow</a> (void)</td></tr>
<tr class="separator:a65206c1977c14a1a73ecfa42f53bbda7"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad475ff16ddc2a6ed9d1946c1003e7513"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ad475ff16ddc2a6ed9d1946c1003e7513">SetShellWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:ad475ff16ddc2a6ed9d1946c1003e7513"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a24f4202e6f8bdebfa4ae2eb9c48753db"><td class="memItemLeft" align="right" valign="top">HWND&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a24f4202e6f8bdebfa4ae2eb9c48753db">GetProgmanWindow</a> (void)</td></tr>
<tr class="separator:a24f4202e6f8bdebfa4ae2eb9c48753db"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1fb31171046bc7f3dac91763c69578e5"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a1fb31171046bc7f3dac91763c69578e5">SetProgmanWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a1fb31171046bc7f3dac91763c69578e5"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0a21f5246590c851a748e8aa6aed6cb9"><td class="memItemLeft" align="right" valign="top">HWND&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0a21f5246590c851a748e8aa6aed6cb9">GetTaskmanWindow</a> (void)</td></tr>
<tr class="separator:a0a21f5246590c851a748e8aa6aed6cb9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a517320a0a2fce6039db4239bf98bf42e"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a517320a0a2fce6039db4239bf98bf42e">SetTaskmanWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a517320a0a2fce6039db4239bf98bf42e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af8e6a3ced4ab675fe7509248fa778247"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af8e6a3ced4ab675fe7509248fa778247">SetWindowContextHelpId</a> (HWND hwnd, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> id)</td></tr>
<tr class="separator:af8e6a3ced4ab675fe7509248fa778247"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a1b0939a76b92454b09e3cdbc60b275d9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a1b0939a76b92454b09e3cdbc60b275d9">GetWindowContextHelpId</a> (HWND hwnd)</td></tr>
<tr class="separator:a1b0939a76b92454b09e3cdbc60b275d9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ab4added876586c5164dae9aaba3e7691"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ab4added876586c5164dae9aaba3e7691">SetWindowState</a> (<a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a> pwnd, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> flags)</td></tr>
<tr class="separator:ab4added876586c5164dae9aaba3e7691"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0cecedf7a462633cf5456292b526d8ec"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0cecedf7a462633cf5456292b526d8ec">ClearWindowState</a> (<a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a> pwnd, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> flags)</td></tr>
<tr class="separator:a0cecedf7a462633cf5456292b526d8ec"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a39badb2e0c794d4f7ea20420f89a3b88"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a39badb2e0c794d4f7ea20420f89a3b88">PostQuitMessage</a> (int nExitCode)</td></tr>
<tr class="separator:a39badb2e0c794d4f7ea20420f89a3b88"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a72f4722e49f0e9590c8abe8395d82c17"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a72f4722e49f0e9590c8abe8395d82c17">RegisterUserHungAppHandlers</a> (PFNW32ET pfnW32EndTask, HANDLE hEventWowExec)</td></tr>
<tr class="separator:a72f4722e49f0e9590c8abe8395d82c17"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4d54aeecb59d707aa9ef66e7ecb702fd"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a4d54aeecb59d707aa9ef66e7ecb702fd">ReleaseCapture</a> ()</td></tr>
<tr class="separator:a4d54aeecb59d707aa9ef66e7ecb702fd"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9f9a4912ec70c118432d7e55bac1d8d6"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9f9a4912ec70c118432d7e55bac1d8d6">ReplyMessage</a> (LONG pp1)</td></tr>
<tr class="separator:a9f9a4912ec70c118432d7e55bac1d8d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a985e054574b6423714fbb891a3245af8"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a985e054574b6423714fbb891a3245af8">RegisterSystemThread</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwFlags, <a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwReserved)</td></tr>
<tr class="separator:a985e054574b6423714fbb891a3245af8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a4566eba1693a79dc637fc7d0eafb1d14"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a4566eba1693a79dc637fc7d0eafb1d14">SetCaretBlinkTime</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wMSeconds)</td></tr>
<tr class="separator:a4566eba1693a79dc637fc7d0eafb1d14"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7902ce7caf9b8212820719461101f3d1"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a7902ce7caf9b8212820719461101f3d1">SetCaretPos</a> (int X, int Y)</td></tr>
<tr class="separator:a7902ce7caf9b8212820719461101f3d1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a349dd9f18e70d7cdeb933052b5445d6e"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a349dd9f18e70d7cdeb933052b5445d6e">SetCursorPos</a> (int X, int Y)</td></tr>
<tr class="separator:a349dd9f18e70d7cdeb933052b5445d6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a52a5d2182b9b6cfa8311ca5ecc0c1aed"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a52a5d2182b9b6cfa8311ca5ecc0c1aed">SetDoubleClickTime</a> (<a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> cms)</td></tr>
<tr class="separator:a52a5d2182b9b6cfa8311ca5ecc0c1aed"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0427963300ccb73271752f9310fab5c8"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0427963300ccb73271752f9310fab5c8">SetForegroundWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a0427963300ccb73271752f9310fab5c8"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afdef4d6332f08210a2f6a559ceb1cdd9"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afdef4d6332f08210a2f6a559ceb1cdd9">ShowCursor</a> (BOOL bShow)</td></tr>
<tr class="separator:afdef4d6332f08210a2f6a559ceb1cdd9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae70bb6a5a2db15a103952cd36f152237"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ae70bb6a5a2db15a103952cd36f152237">ShowOwnedPopups</a> (HWND hwnd, BOOL fShow)</td></tr>
<tr class="separator:ae70bb6a5a2db15a103952cd36f152237"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a876991e2a4ea81c5139591fe08d9ba58"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a876991e2a4ea81c5139591fe08d9ba58">ShowStartGlass</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwTimeout)</td></tr>
<tr class="separator:a876991e2a4ea81c5139591fe08d9ba58"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a749b058b62d696966ab70f0114da060f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a749b058b62d696966ab70f0114da060f">SwapMouseButton</a> (BOOL fSwap)</td></tr>
<tr class="separator:a749b058b62d696966ab70f0114da060f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a61756453579de48a0ebb8986ee78a837"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a61756453579de48a0ebb8986ee78a837">TileChildWindows</a> (HWND hwndParent, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> flags)</td></tr>
<tr class="separator:a61756453579de48a0ebb8986ee78a837"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abf5c43108611c65d3701359a0f5a585d"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#abf5c43108611c65d3701359a0f5a585d">UnhookWindowsHook</a> (int nCode, HOOKPROC pfnFilterProc)</td></tr>
<tr class="separator:abf5c43108611c65d3701359a0f5a585d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8bc3d6c71e90bc4c6472c0647af92301"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a8bc3d6c71e90bc4c6472c0647af92301">UpdateWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a8bc3d6c71e90bc4c6472c0647af92301"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a51ffa6a54cfc270dd5ee7bfead952b67"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a51ffa6a54cfc270dd5ee7bfead952b67">RegisterShellHookWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a51ffa6a54cfc270dd5ee7bfead952b67"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a745a3b3cebe9f5d7766f7d670882b37f"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a745a3b3cebe9f5d7766f7d670882b37f">DeregisterShellHookWindow</a> (HWND hwnd)</td></tr>
<tr class="separator:a745a3b3cebe9f5d7766f7d670882b37f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a16da2aa60bc128b2f0ac57e22c8a4e9e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a16da2aa60bc128b2f0ac57e22c8a4e9e">UserRealizePalette</a> (HDC hdc)</td></tr>
<tr class="separator:a16da2aa60bc128b2f0ac57e22c8a4e9e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a35c65c2e4dea5d532d3d0d53bd43e9fa"><td class="memItemLeft" align="right" valign="top">HWND&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a35c65c2e4dea5d532d3d0d53bd43e9fa">WindowFromDC</a> (HDC hdc)</td></tr>
<tr class="separator:a35c65c2e4dea5d532d3d0d53bd43e9fa"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a62d401b4c96d9c11e1edb8a0ed0aa6ef"><td class="memItemLeft" align="right" valign="top">int&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a62d401b4c96d9c11e1edb8a0ed0aa6ef">GetWindowRgn</a> (HWND hwnd, HRGN hrgn)</td></tr>
<tr class="separator:a62d401b4c96d9c11e1edb8a0ed0aa6ef"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afeedc7ce2c7778f420d0357f1ef24e6e"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afeedc7ce2c7778f420d0357f1ef24e6e">GetActiveKeyboardName</a> (LPWSTR lpszName)</td></tr>
<tr class="separator:afeedc7ce2c7778f420d0357f1ef24e6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a18b9b48b567ab5010e350cbab8fa27ca"><td class="memItemLeft" align="right" valign="top">VOID&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a18b9b48b567ab5010e350cbab8fa27ca">LoadPreloadKeyboardLayouts</a> (void)</td></tr>
<tr class="separator:a18b9b48b567ab5010e350cbab8fa27ca"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a76a56627afc69c00f014d1b508b37ab9"><td class="memItemLeft" align="right" valign="top">HANDLE&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a76a56627afc69c00f014d1b508b37ab9">OpenKeyboardLayoutFile</a> (LPWSTR lpszKLName, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uFlags, PUINT poffTable, PUINT pKbdInputLocale)</td></tr>
<tr class="separator:a76a56627afc69c00f014d1b508b37ab9"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9db87c9998a5f67cb336be51d1d43661"><td class="memItemLeft" align="right" valign="top">HKL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9db87c9998a5f67cb336be51d1d43661">LoadKeyboardLayoutEx</a> (HKL hkl, LPCWSTR lpszKLName, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uFlags)</td></tr>
<tr class="separator:a9db87c9998a5f67cb336be51d1d43661"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a65777ad273ebbc9f15685157f4634b3e"><td class="memItemLeft" align="right" valign="top">HKL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a65777ad273ebbc9f15685157f4634b3e">LoadKeyboardLayoutW</a> (LPCWSTR lpszKLName, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uFlags)</td></tr>
<tr class="separator:a65777ad273ebbc9f15685157f4634b3e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a9aeba22cd3242ce0a5dfd878e83cbf3f"><td class="memItemLeft" align="right" valign="top">HKL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a9aeba22cd3242ce0a5dfd878e83cbf3f">LoadKeyboardLayoutA</a> (LPCSTR lpszKLName, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uFlags)</td></tr>
<tr class="separator:a9aeba22cd3242ce0a5dfd878e83cbf3f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a46278f8b1db32b9b4679eee6abc9e1b4"><td class="memItemLeft" align="right" valign="top">HKL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a46278f8b1db32b9b4679eee6abc9e1b4">GetKeyboardLayout</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> idThread)</td></tr>
<tr class="separator:a46278f8b1db32b9b4679eee6abc9e1b4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa2943a7c5da1891776bf86e04f91483"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#afa2943a7c5da1891776bf86e04f91483">RegisterLogonProcess</a> (<a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwProcessId, BOOL fSecure)</td></tr>
<tr class="separator:afa2943a7c5da1891776bf86e04f91483"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad2cafbb080045c8a0de769d60b650767"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ad2cafbb080045c8a0de769d60b650767">PrivateKDBreakPoint</a> (void)</td></tr>
<tr class="separator:ad2cafbb080045c8a0de769d60b650767"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
变量</h2></td></tr>
<tr class="memitem:af9d5546ba0d4af57ff5515f14371a7f1"><td class="memItemLeft" align="right" valign="top">CONST LPWSTR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#af9d5546ba0d4af57ff5515f14371a7f1">pwszKLLibSafety</a> = L&quot;kbdus.dll&quot;</td></tr>
<tr class="separator:af9d5546ba0d4af57ff5515f14371a7f1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a82f3484223376f86b3f6e2677fd23e0a"><td class="memItemLeft" align="right" valign="top">CONST <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a82f3484223376f86b3f6e2677fd23e0a">wKbdLocaleSafety</a> = 0x04090409</td></tr>
<tr class="separator:a82f3484223376f86b3f6e2677fd23e0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5d3ce9a9c27f144a237797121474dbee"><td class="memItemLeft" align="right" valign="top">BOOL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a5d3ce9a9c27f144a237797121474dbee">gfLogonProcess</a> = FALSE</td></tr>
<tr class="separator:a5d3ce9a9c27f144a237797121474dbee"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a42e773ebcf36c0a3b2404ea7f4a4cb6e"><td class="memItemLeft" align="right" valign="top"><a class="el" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a> = NULL</td></tr>
<tr class="separator:a42e773ebcf36c0a3b2404ea7f4a4cb6e"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ace44ba95256a8598283b551b22699143"><td class="memItemLeft" align="right" valign="top">static <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ace44ba95256a8598283b551b22699143">uCachedCP</a> = 0</td></tr>
<tr class="separator:ace44ba95256a8598283b551b22699143"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a0b9f32df129dc236ccddbb022b51842f"><td class="memItemLeft" align="right" valign="top">static HKL&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a0b9f32df129dc236ccddbb022b51842f">hCachedHKL</a> = 0</td></tr>
<tr class="separator:a0b9f32df129dc236ccddbb022b51842f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae120b606a547d47bb2b247390cd99e34"><td class="memItemLeft" align="right" valign="top">CONST WCHAR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ae120b606a547d47bb2b247390cd99e34">szPreLoadSeq</a> [] = L&quot;%d&quot;</td></tr>
<tr class="separator:ae120b606a547d47bb2b247390cd99e34"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aed7c462c6c2968b207b5cc5808996709"><td class="memItemLeft" align="right" valign="top">CONST WCHAR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#aed7c462c6c2968b207b5cc5808996709">szKLKey</a> [] = L&quot;\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Keyboard Layouts\\&quot;</td></tr>
<tr class="separator:aed7c462c6c2968b207b5cc5808996709"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a77cef7c8f3b2f972456755554e63c192"><td class="memItemLeft" align="right" valign="top">CONST WCHAR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#a77cef7c8f3b2f972456755554e63c192">szKLFile</a> [] = L&quot;Layout File&quot;</td></tr>
<tr class="separator:a77cef7c8f3b2f972456755554e63c192"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad0b7e26330f88a9b5fe86c7cc329d2c4"><td class="memItemLeft" align="right" valign="top">CONST WCHAR&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00026.html#ad0b7e26330f88a9b5fe86c7cc329d2c4">szKLId</a> [] = L&quot;Layout <a class="el" href="a00962.html#a78bf4b8bea0276f89c546081d1f8495d">ID</a>&quot;</td></tr>
<tr class="separator:ad0b7e26330f88a9b5fe86c7cc329d2c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<h2 class="groupheader">宏定义说明</h2>
<a id="a129c6ec17fae777c58c438effb08b90d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a129c6ec17fae777c58c438effb08b90d">&#9670;&nbsp;</a></span>CCH_KL_ID</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CCH_KL_ID&#160;&#160;&#160;16</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00030">30</a> 行定义.</p>

</div>
</div>
<a id="ab9a6e7c8c7a31497ad2aab59eccdbfe6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab9a6e7c8c7a31497ad2aab59eccdbfe6">&#9670;&nbsp;</a></span>CCH_KL_LIBNAME</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define CCH_KL_LIBNAME&#160;&#160;&#160;256</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00029">29</a> 行定义.</p>

</div>
</div>
<a id="afb6cef9b9912c174a04f435c3d289591"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb6cef9b9912c174a04f435c3d289591">&#9670;&nbsp;</a></span>GETCCP_SIZE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define GETCCP_SIZE&#160;&#160;&#160;8</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00670">670</a> 行定义.</p>

</div>
</div>
<a id="a763cdb0985d5d3030736a303a16c0809"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a763cdb0985d5d3030736a303a16c0809">&#9670;&nbsp;</a></span>NSIZEPRELOAD</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NSIZEPRELOAD&#160;&#160;&#160;(4*sizeof(WCHAR))</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03376">3376</a> 行定义.</p>

</div>
</div>
<a id="abcd53e1f447bf113f860c89d2bfe25d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abcd53e1f447bf113f860c89d2bfe25d9">&#9670;&nbsp;</a></span>NSZKLKEY</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define NSZKLKEY&#160;&#160;&#160;sizeof(<a class="el" href="a00026.html#aed7c462c6c2968b207b5cc5808996709">szKLKey</a>)+16</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03411">3411</a> 行定义.</p>

</div>
</div>
<a id="a246cef21d8f236cea2d990af9baf5772"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a246cef21d8f236cea2d990af9baf5772">&#9670;&nbsp;</a></span>SW_FLAG_NRC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SW_FLAG_NRC&#160;&#160;&#160;(SW_SCROLLWINDOW | SW_INVALIDATE | SW_ERASE)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01280">1280</a> 行定义.</p>

</div>
</div>
<a id="afab2ba434c2e8270eede610539dee8b9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afab2ba434c2e8270eede610539dee8b9">&#9670;&nbsp;</a></span>SW_FLAG_RC</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SW_FLAG_RC&#160;&#160;&#160;(SW_SCROLLWINDOW | SW_INVALIDATE | SW_ERASE | SW_SCROLLCHILDREN)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01279">1279</a> 行定义.</p>

</div>
</div>
<h2 class="groupheader">类型定义说明</h2>
<a id="a3f48d75b4d50ad2c13e699967cfd0894"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3f48d75b4d50ad2c13e699967cfd0894">&#9670;&nbsp;</a></span>HANDLENODE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef struct <a class="el" href="a01793.html">_HANDLENODE</a> <a class="el" href="a00026.html#a3f48d75b4d50ad2c13e699967cfd0894">HANDLENODE</a></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a id="a13b3159b78c3ae9b626dac0705adc748"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13b3159b78c3ae9b626dac0705adc748">&#9670;&nbsp;</a></span>PHANDLENODE</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a00026.html#a3f48d75b4d50ad2c13e699967cfd0894">HANDLENODE</a>* <a class="el" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00212">212</a> 行定义.</p>

</div>
</div>
<h2 class="groupheader">函数说明</h2>
<a id="a64c6c5afd434f481fba43538cf27881a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a64c6c5afd434f481fba43538cf27881a">&#9670;&nbsp;</a></span>AdjustWindowRect()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI AdjustWindowRect </td>
          <td>(</td>
          <td class="paramtype">LPRECT&#160;</td>
          <td class="paramname"><em>lprc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>style</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fMenu</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00112">112</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00116"></a><span class="lineno">  116</span>&#160;{</div>
<div class="line"><a name="l00117"></a><span class="lineno">  117</span>&#160;    ConnectIfNecessary();</div>
<div class="line"><a name="l00118"></a><span class="lineno">  118</span>&#160; </div>
<div class="line"><a name="l00119"></a><span class="lineno">  119</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00263.html#ae1ceb717793b21c250225fce6cb4619a">_AdjustWindowRectEx</a>(lprc, style, fMenu, 0L);</div>
<div class="line"><a name="l00120"></a><span class="lineno">  120</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00263_source.html#l00550">_AdjustWindowRectEx()</a>.</p>

</div>
</div>
<a id="a5e3947a37f580989ee3e96f0d037b5b2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5e3947a37f580989ee3e96f0d037b5b2">&#9670;&nbsp;</a></span>ArrangeIconicWindows()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> ArrangeIconicWindows </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02414">2414</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02416"></a><span class="lineno"> 2416</span>&#160;{</div>
<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#a813a94ea49fcd103f8b49c7e43dbe71c">SFI_XXXARRANGEICONICWINDOWS</a>);</div>
<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a>, <a class="el" href="a00335_source.html#l00038">SFI_XXXARRANGEICONICWINDOWS</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

</div>
</div>
<a id="a3fa9f8101f890e00fab52c9bf1057e8f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3fa9f8101f890e00fab52c9bf1057e8f">&#9670;&nbsp;</a></span>BeginDeferWindowPos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE BeginDeferWindowPos </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nNumWindows</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02426">2426</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02428"></a><span class="lineno"> 2428</span>&#160;{</div>
<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span>&#160;    <span class="keywordflow">if</span> (nNumWindows &lt; 0) {</div>
<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span>&#160;        <a class="code" href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a>(ERROR_INVALID_PARAMETER,</div>
<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span>&#160;                <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>,</div>
<div class="line"><a name="l02432"></a><span class="lineno"> 2432</span>&#160;                <span class="stringliteral">&quot;Invalid parameter \&quot;nNumWindows\&quot; (%ld) to BeginDeferWindowPos&quot;</span>,</div>
<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span>&#160;                nNumWindows);</div>
<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span>&#160; </div>
<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span>&#160;        <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span>&#160;    }</div>
<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span>&#160; </div>
<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span>&#160;    <span class="keywordflow">return</span> (HANDLE)<a class="code" href="a00362.html#a46d280dea6feb9d7ee1540e34eee4e26">NtUserCallOneParamTranslate</a>(nNumWindows,</div>
<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span>&#160;                                               <a class="code" href="a00335.html#adc079dfbd8348e849730494c7c9d1b11">SFI__BEGINDEFERWINDOWPOS</a>);</div>
<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03266">NtUserCallOneParamTranslate()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00120">RIPERR1</a> , 以及 <a class="el" href="a00335_source.html#l00001">SFI__BEGINDEFERWINDOWPOS</a>.</p>

</div>
</div>
<a id="afff345d574f0444f665bdb716596ed87"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afff345d574f0444f665bdb716596ed87">&#9670;&nbsp;</a></span>BringWindowToTop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL BringWindowToTop </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00042">42</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00044"></a><span class="lineno">   44</span>&#160;{</div>
<div class="line"><a name="l00045"></a><span class="lineno">   45</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a97ea52174705d791899a9df860aab676">NtUserSetWindowPos</a>(hwnd,</div>
<div class="line"><a name="l00046"></a><span class="lineno">   46</span>&#160;                              HWND_TOP,</div>
<div class="line"><a name="l00047"></a><span class="lineno">   47</span>&#160;                              0,</div>
<div class="line"><a name="l00048"></a><span class="lineno">   48</span>&#160;                              0,</div>
<div class="line"><a name="l00049"></a><span class="lineno">   49</span>&#160;                              0,</div>
<div class="line"><a name="l00050"></a><span class="lineno">   50</span>&#160;                              0,</div>
<div class="line"><a name="l00051"></a><span class="lineno">   51</span>&#160;                              SWP_NOSIZE | SWP_NOMOVE);</div>
<div class="line"><a name="l00052"></a><span class="lineno">   52</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l01716">NtUserSetWindowPos()</a>.</p>

</div>
</div>
<a id="af335215811e4eabeecff335569c85100"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af335215811e4eabeecff335569c85100">&#9670;&nbsp;</a></span>CascadeChildWindows()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL CascadeChildWindows </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwndParent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>nCode</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02460">2460</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02463"></a><span class="lineno"> 2463</span>&#160;{</div>
<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span>&#160;    <span class="keywordflow">return</span> (BOOL) <a class="code" href="a00200.html#a94ff0ec22950f82017c679c1e1a2054c">CascadeWindows</a>(hwndParent, nCode, NULL, 0, NULL);</div>
<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00200_source.html#l00714">CascadeWindows()</a>.</p>

</div>
</div>
<a id="a430d8f19eb8d2a931d93610d51bb1ce1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a430d8f19eb8d2a931d93610d51bb1ce1">&#9670;&nbsp;</a></span>ChildWindowFromPoint()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWND ChildWindowFromPoint </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwndParent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">POINT&#160;</td>
          <td class="paramname"><em>point</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00054">54</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00057"></a><span class="lineno">   57</span>&#160;{</div>
<div class="line"><a name="l00058"></a><span class="lineno">   58</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00059"></a><span class="lineno">   59</span>&#160;<span class="comment">     * Cool Hack Alert... Corel Ventura 5.0</span></div>
<div class="line"><a name="l00060"></a><span class="lineno">   60</span>&#160;<span class="comment">     * Dies after it calls ChildWindowFromPoint, and</span></div>
<div class="line"><a name="l00061"></a><span class="lineno">   61</span>&#160;<span class="comment">     * the combobox doesn&#39;t have its edit window at 1,1...</span></div>
<div class="line"><a name="l00062"></a><span class="lineno">   62</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00063"></a><span class="lineno">   63</span>&#160;    <span class="keywordflow">if</span> ((point.x == 1) &amp;&amp; (point.y == 1)) {</div>
<div class="line"><a name="l00064"></a><span class="lineno">   64</span>&#160;        <a class="code" href="a01889.html">PCBOX</a> pcCombo;</div>
<div class="line"><a name="l00065"></a><span class="lineno">   65</span>&#160;        <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l00066"></a><span class="lineno">   66</span>&#160; </div>
<div class="line"><a name="l00067"></a><span class="lineno">   67</span>&#160;        pwnd = <a class="code" href="a00293.html#a41d387d1b2d42169cbaa2092c8a02abf">ValidateHwnd</a>(hwndParent);</div>
<div class="line"><a name="l00068"></a><span class="lineno">   68</span>&#160;        <span class="keywordflow">if</span> (pwnd == NULL)</div>
<div class="line"><a name="l00069"></a><span class="lineno">   69</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00070"></a><span class="lineno">   70</span>&#160; </div>
<div class="line"><a name="l00071"></a><span class="lineno">   71</span>&#160;        <span class="keywordflow">if</span> (!TestWF(pwnd, WFWIN40COMPAT)   &amp;&amp;</div>
<div class="line"><a name="l00072"></a><span class="lineno">   72</span>&#160;            GETFNID(pwnd) == FNID_COMBOBOX &amp;&amp;</div>
<div class="line"><a name="l00073"></a><span class="lineno">   73</span>&#160;            <a class="code" href="a00263.html#a52c48f6bdd99bf8fee75d67f1b1b4d01">TestWindowProcess</a>(pwnd) &amp;&amp;</div>
<div class="line"><a name="l00074"></a><span class="lineno">   74</span>&#160;            ((pcCombo = ((<a class="code" href="a01893.html">PCOMBOWND</a>)pwnd)-&gt;pcbox) != NULL) &amp;&amp;</div>
<div class="line"><a name="l00075"></a><span class="lineno">   75</span>&#160;            !(pcCombo-&gt;<a class="code" href="a01889.html#a3d504d1fbd4e573e6e9c755e161af9e4">fNoEdit</a>)) {</div>
<div class="line"><a name="l00076"></a><span class="lineno">   76</span>&#160; </div>
<div class="line"><a name="l00077"></a><span class="lineno">   77</span>&#160;            <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;ChildWindowFromPoint: Combobox @1,1. Returning spwndEdit&quot;</span>);</div>
<div class="line"><a name="l00078"></a><span class="lineno">   78</span>&#160;            <span class="keywordflow">return</span> HWq(pcCombo-&gt;<a class="code" href="a01889.html#a2d22bfa9dcbd27c904993db8e1a916db">spwndEdit</a>);</div>
<div class="line"><a name="l00079"></a><span class="lineno">   79</span>&#160;        }</div>
<div class="line"><a name="l00080"></a><span class="lineno">   80</span>&#160; </div>
<div class="line"><a name="l00081"></a><span class="lineno">   81</span>&#160;    }</div>
<div class="line"><a name="l00082"></a><span class="lineno">   82</span>&#160; </div>
<div class="line"><a name="l00083"></a><span class="lineno">   83</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a00bbf48f9220b8cc246f0d2b2bea280c">NtUserChildWindowFromPointEx</a>(hwndParent, point, 0);</div>
<div class="line"><a name="l00084"></a><span class="lineno">   84</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00257_source.html#l00488">tagCBox::fNoEdit</a>, <a class="el" href="a03614_source.html#l02668">NtUserChildWindowFromPointEx()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00131">RIPMSG0</a>, <a class="el" href="a00257_source.html#l00461">tagCBox::spwndEdit</a>, <a class="el" href="a00263_source.html#l00489">TestWindowProcess()</a> , 以及 <a class="el" href="a00293_source.html#l00090">ValidateHwnd</a>.</p>

</div>
</div>
<a id="a0cecedf7a462633cf5456292b526d8ec"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0cecedf7a462633cf5456292b526d8ec">&#9670;&nbsp;</a></span>ClearWindowState()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ClearWindowState </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>&#160;</td>
          <td class="paramname"><em>pwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02834">2834</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02837"></a><span class="lineno"> 2837</span>&#160;{</div>
<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span>&#160;    <span class="keywordflow">if</span> (TestWF(pwnd, flags))</div>
<div class="line"><a name="l02839"></a><span class="lineno"> 2839</span>&#160;        <a class="code" href="a00362.html#a4587e82182c73aeb97a7f528b5dfdaa0">NtUserCallHwndParam</a>(HWq(pwnd), flags, <a class="code" href="a00335.html#a6351625761ce4edc1fc3e000ca54c4de">SFI_CLEARWINDOWSTATE</a>);</div>
<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03370">NtUserCallHwndParam()</a> , 以及 <a class="el" href="a00335_source.html#l00002">SFI_CLEARWINDOWSTATE</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00005_source.html#l01283">ButtonWndProcWorker()</a>, <a class="el" href="a00200_source.html#l00229">CalcClientScrolling()</a>, <a class="el" href="a00059_source.html#l00031">CBNcCreateHandler()</a>, <a class="el" href="a00101_source.html#l00446">DefDlgProcWorker()</a>, <a class="el" href="a00122_source.html#l00188">ECNcCreate()</a>, <a class="el" href="a00122_source.html#l00409">ECSetPasswordChar()</a>, <a class="el" href="a00125_source.html#l02302">EditWndProc()</a>, <a class="el" href="a00197_source.html#l00165">MDIAddSysMenu()</a>, <a class="el" href="a00200_source.html#l01481">MDIClientWndProcWorker()</a> , 以及 <a class="el" href="a00134_source.html#l00021">MLCreate()</a>.</p>

</div>
</div>
<a id="a419502c690ecadea2ef606382c5cd028"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a419502c690ecadea2ef606382c5cd028">&#9670;&nbsp;</a></span>ClientEmptyClipboard()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ClientEmptyClipboard </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00286">286</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00287"></a><span class="lineno">  287</span>&#160;{</div>
<div class="line"><a name="l00288"></a><span class="lineno">  288</span>&#160;    <a class="code" href="a01793.html">PHANDLENODE</a> phnNext;</div>
<div class="line"><a name="l00289"></a><span class="lineno">  289</span>&#160;    <a class="code" href="a01793.html">PHANDLENODE</a> phnT;</div>
<div class="line"><a name="l00290"></a><span class="lineno">  290</span>&#160; </div>
<div class="line"><a name="l00291"></a><span class="lineno">  291</span>&#160;    RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00292"></a><span class="lineno">  292</span>&#160; </div>
<div class="line"><a name="l00293"></a><span class="lineno">  293</span>&#160;    phnT = <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a>;</div>
<div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;    <span class="keywordflow">while</span> (phnT != NULL) {</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;        phnNext = phnT-&gt;<a class="code" href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">pnext</a>;</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160; </div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160;        <span class="keywordflow">if</span> (phnT-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> != (HANDLE)0)</div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;            <a class="code" href="a00026.html#af5361d8c9ee2d1ddd9b99a8e597ed6d6">DeleteClientClipboardHandle</a>(phnT-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a>, phnT-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a>);</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160; </div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;        LocalFree(phnT);</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        phnT = phnNext;</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160;    }</div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;    <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a> = NULL;</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160; </div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160;<span class="comment">     * Tell wow to cleanup it&#39;s clipboard stuff</span></div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="a00020.html#a5ca751ac4b273a98f04a83917c71af06">pfnWowEmptyClipBoard</a>) {</div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;        <a class="code" href="a00020.html#a5ca751ac4b273a98f04a83917c71af06">pfnWowEmptyClipBoard</a>();</div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;    }</div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160; </div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;    RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l00222">DeleteClientClipboardHandle()</a>, <a class="el" href="a00026_source.html#l00207">_HANDLENODE::fmt</a>, <a class="el" href="a00020_source.html#l00097">gcsClipboard</a>, <a class="el" href="a00026_source.html#l00214">gphn</a>, <a class="el" href="a00026_source.html#l00209">_HANDLENODE::handleClient</a>, <a class="el" href="a00020_source.html#l00138">pfnWowEmptyClipBoard</a> , 以及 <a class="el" href="a00026_source.html#l00206">_HANDLENODE::pnext</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a03611_source.html#l00661">OpenClipboard()</a>.</p>

</div>
</div>
<a id="a3839e358fb91652391fce2512727776e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3839e358fb91652391fce2512727776e">&#9670;&nbsp;</a></span>CloseClipboard()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL CloseClipboard </td>
          <td>(</td>
          <td class="paramtype">VOID&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02473">2473</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02474"></a><span class="lineno"> 2474</span>&#160;{</div>
<div class="line"><a name="l02475"></a><span class="lineno"> 2475</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)NULL, <a class="code" href="a00335.html#a0e08e27fcd3016c96563aa0cb1406bac">SFI_XXXCLOSECLIPBOARD</a>);</div>
<div class="line"><a name="l02476"></a><span class="lineno"> 2476</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00051">SFI_XXXCLOSECLIPBOARD</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00125_source.html#l02100">ECCopy()</a>, <a class="el" href="a00128_source.html#l02337">MLPasteText()</a>, <a class="el" href="a00953_source.html#l00167">ProfClipboardGroup()</a> , 以及 <a class="el" href="a00131_source.html#l00933">SLPasteText()</a>.</p>

</div>
</div>
<a id="acc38930a85ebbcb0cadc3fa2f7485a4d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#acc38930a85ebbcb0cadc3fa2f7485a4d">&#9670;&nbsp;</a></span>CloseWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL CloseWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02484">2484</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02486"></a><span class="lineno"> 2486</span>&#160;{</div>
<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#a2071088a6d14e97d135ac6da639cab87">SFI_XXXCLOSEWINDOW</a>);</div>
<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a> , 以及 <a class="el" href="a00335_source.html#l00039">SFI_XXXCLOSEWINDOW</a>.</p>

</div>
</div>
<a id="aac98e7e264e1a510f68f831a29570a9b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aac98e7e264e1a510f68f831a29570a9b">&#9670;&nbsp;</a></span>CommonCreateDesktop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK CommonCreateDesktop </td>
          <td>(</td>
          <td class="paramtype">PUNICODE_STRING&#160;</td>
          <td class="paramname"><em>pstrDesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PUNICODE_STRING&#160;</td>
          <td class="paramname"><em>pstrDevice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDEVMODEW&#160;</td>
          <td class="paramname"><em>pDevmode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01982">1982</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01989"></a><span class="lineno"> 1989</span>&#160;{</div>
<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span>&#160;    OBJECT_ATTRIBUTES Obja;</div>
<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span>&#160;    HDESK hdesk = NULL;</div>
<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span>&#160;    UNICODE_STRING strNtDeviceName;</div>
<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span>&#160;    LPDEVMODEW mappedDevmode = pDevmode;</div>
<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span>&#160;    NTSTATUS status;</div>
<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span>&#160; </div>
<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span>&#160;<span class="comment">     * Convert the Dos file name into an Nt file name</span></div>
<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span>&#160;    status = <a class="code" href="a03638.html#a4f9caa22ed529d60b842daca58968a5d">MapDeviceName</a>(</div>
<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span>&#160;            (LPCWSTR)pstrDevice-&gt;Buffer,</div>
<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span>&#160;            &amp;strNtDeviceName,</div>
<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span>&#160;            FALSE);</div>
<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span>&#160; </div>
<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS(status)) {</div>
<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span>&#160;        <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span>&#160;    }</div>
<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span>&#160; </div>
<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span>&#160;    InitializeObjectAttributes(&amp;Obja,</div>
<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span>&#160;                               pstrDesktop,</div>
<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span>&#160;                               OBJ_CASE_INSENSITIVE | OBJ_OPENIF |</div>
<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span>&#160;                                   ((lpsa &amp;&amp; lpsa-&gt;bInheritHandle) ? OBJ_INHERIT : 0),</div>
<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span>&#160;                               <a class="code" href="a00362.html#a99be647f71492a2a51f273bef069caf4">NtUserGetProcessWindowStation</a>(),</div>
<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span>&#160;                               lpsa ? lpsa-&gt;lpSecurityDescriptor : NULL);</div>
<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span>&#160; </div>
<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span>&#160;    hdesk = <a class="code" href="a00362.html#a78038279c01dd1906e89f78bfe2d32fe">NtUserCreateDesktop</a>(&amp;Obja,</div>
<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span>&#160;                                &amp;strNtDeviceName,</div>
<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span>&#160;                                mappedDevmode,</div>
<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span>&#160;                                dwFlags,</div>
<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span>&#160;                                amRequest);</div>
<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span>&#160; </div>
<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span>&#160;<span class="comment">     * Clean up device name</span></div>
<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span>&#160; </div>
<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span>&#160;    RtlFreeHeap(RtlProcessHeap(), 0, strNtDeviceName.Buffer);</div>
<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span>&#160; </div>
<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span>&#160;    <span class="keywordflow">return</span> hdesk;</div>
<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03638_source.html#l00213">MapDeviceName()</a>, <a class="el" href="a03614_source.html#l00821">NtUserCreateDesktop()</a>, <a class="el" href="a03614_source.html#l00810">NtUserGetProcessWindowStation()</a>, <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a> , 以及 <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02031">CreateDesktopA()</a> , 以及 <a class="el" href="a00026_source.html#l02091">CreateDesktopW()</a>.</p>

</div>
</div>
<a id="adcd27bceb3499bb7ba614750b143c278"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adcd27bceb3499bb7ba614750b143c278">&#9670;&nbsp;</a></span>CommonCreateWindowStation()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA CommonCreateWindowStation </td>
          <td>(</td>
          <td class="paramtype">PUNICODE_STRING&#160;</td>
          <td class="paramname"><em>pstrName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwReserved</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01787">1787</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01792"></a><span class="lineno"> 1792</span>&#160;{</div>
<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span>&#160;    OBJECT_ATTRIBUTES Obja;</div>
<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span>&#160;    HANDLE hRootDirectory;</div>
<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span>&#160;    UNICODE_STRING strRootDirectory;</div>
<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span>&#160;    HWINSTA hwinstaNew;</div>
<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span>&#160;    WCHAR pwszKLID[KL_NAMELENGTH];</div>
<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span>&#160;    HANDLE hKeyboardFile;</div>
<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> offTable;</div>
<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span>&#160;    UNICODE_STRING strKLID;</div>
<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uKbdInputLocale;</div>
<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span>&#160; </div>
<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span>&#160;<span class="comment">     * Load initial keyboard layout.  Continue even if</span></div>
<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span>&#160;<span class="comment">     * this fails (esp. important with KLF_INITTIME set)</span></div>
<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span>&#160;    <a class="code" href="a00026.html#afeedc7ce2c7778f420d0357f1ef24e6e">GetActiveKeyboardName</a>(pwszKLID);</div>
<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span>&#160;    hKeyboardFile = <a class="code" href="a00026.html#a76a56627afc69c00f014d1b508b37ab9">OpenKeyboardLayoutFile</a>(pwszKLID,</div>
<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span>&#160;            KLF_ACTIVATE | KLF_INITTIME, &amp;offTable, &amp;uKbdInputLocale);</div>
<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span>&#160;    <span class="keywordflow">if</span> (hKeyboardFile == NULL) {</div>
<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span>&#160;    }</div>
<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span>&#160;    RtlInitUnicodeString(&amp;strKLID, pwszKLID);</div>
<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span>&#160; </div>
<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span>&#160;<span class="comment">     * If a name was specified, open the parent directory.  Be sure</span></div>
<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span>&#160;<span class="comment">     * to test the length rather than the buffer because for NULL</span></div>
<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span>&#160;<span class="comment">     * string RtlCreateUnicodeStringFromAsciiz will allocate a</span></div>
<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span>&#160;<span class="comment">     * buffer pointing to an empty string.</span></div>
<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span>&#160;    <span class="keywordflow">if</span> (pstrName-&gt;Length != 0) {</div>
<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span>&#160;        RtlInitUnicodeString(&amp;strRootDirectory, WINSTA_DIR);</div>
<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span>&#160;        InitializeObjectAttributes(&amp;Obja, &amp;strRootDirectory,</div>
<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span>&#160;                OBJ_CASE_INSENSITIVE, NULL, NULL);</div>
<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span>&#160;        Status = NtOpenDirectoryObject(&amp;hRootDirectory,</div>
<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span>&#160;                DIRECTORY_CREATE_OBJECT, &amp;Obja);</div>
<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span>&#160;        <span class="keywordflow">if</span> (!NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span>&#160;            <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span>&#160;            NtClose(hKeyboardFile);</div>
<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span>&#160;        }</div>
<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span>&#160;        pstrName = NULL;</div>
<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span>&#160;        hRootDirectory = NULL;</div>
<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span>&#160;    }</div>
<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span>&#160; </div>
<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span>&#160;    InitializeObjectAttributes(&amp;Obja, pstrName,</div>
<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span>&#160;            OBJ_CASE_INSENSITIVE  | OBJ_OPENIF |</div>
<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span>&#160;                ((lpsa &amp;&amp; lpsa-&gt;bInheritHandle) ? OBJ_INHERIT : 0),</div>
<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span>&#160;            hRootDirectory, lpsa ? lpsa-&gt;lpSecurityDescriptor : NULL);</div>
<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span>&#160; </div>
<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span>&#160;    hwinstaNew = <a class="code" href="a00362.html#a91efe5874356d4182da4017faa8a2af3">NtUserCreateWindowStation</a>(&amp;Obja, dwReserved, amRequest,</div>
<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span>&#160;            hKeyboardFile, offTable, &amp;strKLID, uKbdInputLocale);</div>
<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span>&#160; </div>
<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span>&#160;    <span class="keywordflow">if</span> (hRootDirectory != NULL)</div>
<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span>&#160;        NtClose(hRootDirectory);</div>
<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span>&#160; </div>
<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span>&#160;    NtClose(hKeyboardFile);</div>
<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span>&#160; </div>
<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span>&#160;    <span class="keywordflow">return</span> hwinstaNew;</div>
<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00026_source.html#l03175">GetActiveKeyboardName()</a>, <a class="el" href="a00362.html#a91efe5874356d4182da4017faa8a2af3">NtUserCreateWindowStation()</a>, <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>, <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a>, <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l01854">CreateWindowStationA()</a> , 以及 <a class="el" href="a00026_source.html#l01873">CreateWindowStationW()</a>.</p>

</div>
</div>
<a id="a6c4833589a236b8903a861fe19222918"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c4833589a236b8903a861fe19222918">&#9670;&nbsp;</a></span>CommonOpenDesktop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK CommonOpenDesktop </td>
          <td>(</td>
          <td class="paramtype">PUNICODE_STRING&#160;</td>
          <td class="paramname"><em>pstrDesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02122">2122</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02127"></a><span class="lineno"> 2127</span>&#160;{</div>
<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span>&#160;    OBJECT_ATTRIBUTES ObjA;</div>
<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span>&#160; </div>
<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span>&#160;    InitializeObjectAttributes( &amp;ObjA,</div>
<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span>&#160;                                pstrDesktop,</div>
<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span>&#160;                                OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span>&#160;                                <a class="code" href="a00362.html#a99be647f71492a2a51f273bef069caf4">NtUserGetProcessWindowStation</a>(),</div>
<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span>&#160;                                NULL</div>
<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span>&#160;                                );</div>
<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span>&#160;    <span class="keywordflow">if</span> (fInherit)</div>
<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span>&#160;        ObjA.Attributes |= OBJ_INHERIT;</div>
<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span>&#160; </div>
<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#aa7b94b98ecf033425c10a53450deab43">NtUserOpenDesktop</a>(&amp;ObjA, dwFlags, amRequest);</div>
<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l00810">NtUserGetProcessWindowStation()</a> , 以及 <a class="el" href="a03614_source.html#l00869">NtUserOpenDesktop()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02142">OpenDesktopA()</a> , 以及 <a class="el" href="a00026_source.html#l02161">OpenDesktopW()</a>.</p>

</div>
</div>
<a id="a28b722aaf4a4881ff619be64522129e1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a28b722aaf4a4881ff619be64522129e1">&#9670;&nbsp;</a></span>CommonOpenWindowStation()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA CommonOpenWindowStation </td>
          <td>(</td>
          <td class="paramtype">PUNICODE_STRING&#160;</td>
          <td class="paramname"><em>pstrName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01895">1895</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01899"></a><span class="lineno"> 1899</span>&#160;{</div>
<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span>&#160;    OBJECT_ATTRIBUTES ObjA;</div>
<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span>&#160;    HANDLE hRootDirectory;</div>
<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span>&#160;    UNICODE_STRING strRootDirectory;</div>
<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span>&#160;    UNICODE_STRING strDefaultName;</div>
<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span>&#160;    HWINSTA hwinsta;</div>
<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span>&#160;    WCHAR awchName[<span class="keyword">sizeof</span>(L<span class="stringliteral">&quot;Service-0x0000-0000$&quot;</span>) / <span class="keyword">sizeof</span>(WCHAR)];</div>
<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span>&#160; </div>
<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span>&#160;    RtlInitUnicodeString(&amp;strRootDirectory, WINSTA_DIR);</div>
<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span>&#160;    InitializeObjectAttributes(&amp;ObjA,</div>
<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span>&#160;                               &amp;strRootDirectory,</div>
<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span>&#160;                               OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span>&#160;                               NULL, NULL);</div>
<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span>&#160;    Status = NtOpenDirectoryObject(&amp;hRootDirectory,</div>
<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span>&#160;                                   DIRECTORY_TRAVERSE,</div>
<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span>&#160;                                   &amp;ObjA);</div>
<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span>&#160;        <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span>&#160;    }</div>
<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span>&#160; </div>
<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span>&#160;    <span class="keywordflow">if</span> (pstrName-&gt;Length == 0) {</div>
<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span>&#160;        <a class="code" href="a00938.html#af342e0e9b49a1c8b503ea5d49c6c863d">wsprintfW</a>(awchName, L<span class="stringliteral">&quot;Service-0x0000-0000$&quot;</span>);</div>
<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span>&#160;        RtlInitUnicodeString(&amp;strDefaultName, awchName);</div>
<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span>&#160;        pstrName = &amp;strDefaultName;</div>
<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span>&#160;    }</div>
<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span>&#160; </div>
<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span>&#160;    InitializeObjectAttributes( &amp;ObjA,</div>
<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span>&#160;                                pstrName,</div>
<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span>&#160;                                OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span>&#160;                                hRootDirectory,</div>
<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span>&#160;                                NULL</div>
<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span>&#160;                                );</div>
<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span>&#160;    <span class="keywordflow">if</span> (fInherit)</div>
<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span>&#160;        ObjA.Attributes |= OBJ_INHERIT;</div>
<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span>&#160; </div>
<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span>&#160;    hwinsta = <a class="code" href="a00362.html#a94525b33a85c016c6a0fc00a8dce5402">NtUserOpenWindowStation</a>(&amp;ObjA, amRequest);</div>
<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span>&#160; </div>
<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span>&#160;    NtClose(hRootDirectory);</div>
<div class="line"><a name="l01939"></a><span class="lineno"> 1939</span>&#160; </div>
<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span>&#160;    <span class="keywordflow">return</span> hwinsta;</div>
<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l00696">NtUserOpenWindowStation()</a>, <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a>, <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a> , 以及 <a class="el" href="a00938_source.html#l00963">wsprintfW()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l01943">OpenWindowStationA()</a> , 以及 <a class="el" href="a00026_source.html#l01961">OpenWindowStationW()</a>.</p>

</div>
</div>
<a id="a9ff2d0cce0b9ea5ae8942ec1ef67d88b"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9ff2d0cce0b9ea5ae8942ec1ef67d88b">&#9670;&nbsp;</a></span>CopyIcon()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HICON CopyIcon </td>
          <td>(</td>
          <td class="paramtype">HICON&#160;</td>
          <td class="paramname"><em>hicon</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00087">87</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00089"></a><span class="lineno">   89</span>&#160;{</div>
<div class="line"><a name="l00090"></a><span class="lineno">   90</span>&#160;    HICON    hIconT = NULL;</div>
<div class="line"><a name="l00091"></a><span class="lineno">   91</span>&#160;    ICONINFO ii;</div>
<div class="line"><a name="l00092"></a><span class="lineno">   92</span>&#160; </div>
<div class="line"><a name="l00093"></a><span class="lineno">   93</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="a00047.html#acd298466f31ea6f88b8c916f8f53062a">GetIconInfo</a>(hicon, &amp;ii)) {</div>
<div class="line"><a name="l00094"></a><span class="lineno">   94</span>&#160;        hIconT = <a class="code" href="a00047.html#aa9436fb2e24847a8664295397c96306b">CreateIconIndirect</a>(&amp;ii);</div>
<div class="line"><a name="l00095"></a><span class="lineno">   95</span>&#160; </div>
<div class="line"><a name="l00096"></a><span class="lineno">   96</span>&#160;        DeleteObject(ii.hbmMask);</div>
<div class="line"><a name="l00097"></a><span class="lineno">   97</span>&#160; </div>
<div class="line"><a name="l00098"></a><span class="lineno">   98</span>&#160;        <span class="keywordflow">if</span> (ii.hbmColor != NULL)</div>
<div class="line"><a name="l00099"></a><span class="lineno">   99</span>&#160;            DeleteObject(ii.hbmColor);</div>
<div class="line"><a name="l00100"></a><span class="lineno">  100</span>&#160;    }</div>
<div class="line"><a name="l00101"></a><span class="lineno">  101</span>&#160; </div>
<div class="line"><a name="l00102"></a><span class="lineno">  102</span>&#160;    <span class="keywordflow">return</span> hIconT;</div>
<div class="line"><a name="l00103"></a><span class="lineno">  103</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00047_source.html#l01135">CreateIconIndirect()</a> , 以及 <a class="el" href="a00047_source.html#l01278">GetIconInfo()</a>.</p>

</div>
</div>
<a id="aa96bc2d65ca263ad0b2d37af7186851c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa96bc2d65ca263ad0b2d37af7186851c">&#9670;&nbsp;</a></span>CreateCaret()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI CreateCaret </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hWnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HBITMAP&#160;</td>
          <td class="paramname"><em>hBitmap</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nWidth</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nHeight</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01213">1213</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01214"></a><span class="lineno"> 1214</span>&#160;{</div>
<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span>&#160;<span class="comment">     * NULL is solid; 1 is Gray</span></div>
<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span>&#160;    <span class="keywordflow">if</span> ((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hBitmap &gt;= 2) {</div>
<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span>&#160;        FIXUP_HANDLE(hBitmap);</div>
<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span>&#160;        <span class="keywordflow">if</span> (hBitmap == NULL) {</div>
<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span>&#160;            <a class="code" href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a>(ERROR_INVALID_HANDLE, <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;Invalid bitmap %lX&quot;</span>, hBitmap);</div>
<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span>&#160;        }</div>
<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span>&#160;    }</div>
<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span>&#160; </div>
<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a5aaa23bf9e9f7a5135d6b7444f6581c7">NtUserCreateCaret</a>(hWnd, hBitmap, nWidth, nHeight);</div>
<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l05177">NtUserCreateCaret()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a> , 以及 <a class="el" href="a00371_source.html#l00120">RIPERR1</a>.</p>

</div>
</div>
<a id="ab46511b933a17b7a82e4b64b4f5c9f65"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab46511b933a17b7a82e4b64b4f5c9f65">&#9670;&nbsp;</a></span>CreateDesktopA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK CreateDesktopA </td>
          <td>(</td>
          <td class="paramtype">LPSTR&#160;</td>
          <td class="paramname"><em>pDesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPSTR&#160;</td>
          <td class="paramname"><em>pDevice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDEVMODEA&#160;</td>
          <td class="paramname"><em>pDevmode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02031">2031</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02038"></a><span class="lineno"> 2038</span>&#160;{</div>
<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span>&#160;    ANSI_STRING AnsiString;</div>
<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span>&#160;    UNICODE_STRING UnicodeDesktop;</div>
<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span>&#160;    UNICODE_STRING UnicodeDevice;</div>
<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span>&#160;    LPDEVMODEW lpDevModeW = NULL;</div>
<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span>&#160;    HDESK hdesk;</div>
<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span>&#160; </div>
<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span>&#160;    RtlInitAnsiString(&amp;AnsiString, pDesktop);</div>
<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span>&#160;    Status = RtlAnsiStringToUnicodeString( &amp;UnicodeDesktop, &amp;AnsiString, TRUE );</div>
<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span>&#160;    <span class="keywordflow">if</span> ( !NT_SUCCESS(Status) ) {</div>
<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span>&#160;        <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span>&#160;    }</div>
<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span>&#160; </div>
<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span>&#160;    <span class="keywordflow">if</span> (pDevice) {</div>
<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span>&#160; </div>
<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span>&#160;        RtlInitAnsiString(&amp;AnsiString, pDevice);</div>
<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span>&#160;        Status = RtlAnsiStringToUnicodeString( &amp;UnicodeDevice, &amp;AnsiString, TRUE );</div>
<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span>&#160;        <span class="keywordflow">if</span> ( !NT_SUCCESS(Status) ) {</div>
<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span>&#160;            <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span>&#160;            RtlFreeUnicodeString(&amp;UnicodeDesktop);</div>
<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span>&#160;        }</div>
<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span>&#160;        RtlInitUnicodeString(&amp;UnicodeDevice, NULL);</div>
<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span>&#160;    }</div>
<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span>&#160; </div>
<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span>&#160;    <span class="keywordflow">if</span> (pDevmode) {</div>
<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span>&#160; </div>
<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span>&#160;        lpDevModeW = GdiConvertToDevmodeW(pDevmode);</div>
<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span>&#160; </div>
<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span>&#160;    }</div>
<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span>&#160; </div>
<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span>&#160;    hdesk = <a class="code" href="a00026.html#aac98e7e264e1a510f68f831a29570a9b">CommonCreateDesktop</a>(&amp;UnicodeDesktop,</div>
<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span>&#160;                                &amp;UnicodeDevice,</div>
<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span>&#160;                                lpDevModeW,</div>
<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span>&#160;                                dwFlags,</div>
<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span>&#160;                                amRequest,</div>
<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span>&#160;                                lpsa);</div>
<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span>&#160; </div>
<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span>&#160;    RtlFreeUnicodeString(&amp;UnicodeDesktop);</div>
<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span>&#160;    <span class="keywordflow">if</span> (pDevice) {</div>
<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span>&#160;        RtlFreeUnicodeString(&amp;UnicodeDevice);</div>
<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span>&#160;    }</div>
<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span>&#160; </div>
<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span>&#160;    <span class="keywordflow">if</span> (lpDevModeW) {</div>
<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span>&#160;        LocalFree(lpDevModeW);</div>
<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span>&#160;    }</div>
<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span>&#160; </div>
<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span>&#160;    <span class="keywordflow">return</span> hdesk;</div>
<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01982">CommonCreateDesktop()</a>, <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a> , 以及 <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a>.</p>

</div>
</div>
<a id="a27cf4f7bdd3823eb223dcb9fb8955cbf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a27cf4f7bdd3823eb223dcb9fb8955cbf">&#9670;&nbsp;</a></span>CreateDesktopW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK CreateDesktopW </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>pDesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>pDevice</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDEVMODEW&#160;</td>
          <td class="paramname"><em>pDevmode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02091">2091</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02098"></a><span class="lineno"> 2098</span>&#160;{</div>
<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span>&#160;    UNICODE_STRING strDesktop;</div>
<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span>&#160;    UNICODE_STRING strDevice;</div>
<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span>&#160; </div>
<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span>&#160;    RtlInitUnicodeString(&amp;strDesktop, pDesktop);</div>
<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span>&#160;    RtlInitUnicodeString(&amp;strDevice, pDevice);</div>
<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span>&#160; </div>
<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#aac98e7e264e1a510f68f831a29570a9b">CommonCreateDesktop</a>(&amp;strDesktop,</div>
<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span>&#160;                               &amp;strDevice,</div>
<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span>&#160;                               pDevmode,</div>
<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span>&#160;                               dwFlags,</div>
<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span>&#160;                               amRequest,</div>
<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span>&#160;                               lpsa);</div>
<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01982">CommonCreateDesktop()</a>.</p>

</div>
</div>
<a id="a574ca013bc708be1606b8e2ceaebd74d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a574ca013bc708be1606b8e2ceaebd74d">&#9670;&nbsp;</a></span>CreateMenu()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HMENU CreateMenu </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02496">2496</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02497"></a><span class="lineno"> 2497</span>&#160;{</div>
<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span>&#160;    <span class="keywordflow">return</span> (HMENU)<a class="code" href="a00362.html#a0b2d5f1d4b96dd098bb7e3db736382b2">NtUserCallNoParamTranslate</a>(<a class="code" href="a00335.html#ac514f2b7f4486f41196a3d355fac3193">SFI__CREATEMENU</a>);</div>
<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03232">NtUserCallNoParamTranslate()</a> , 以及 <a class="el" href="a00335_source.html#l00004">SFI__CREATEMENU</a>.</p>

</div>
</div>
<a id="ac90ccfafcadfa1ac0ce5bda1b49ba9d5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac90ccfafcadfa1ac0ce5bda1b49ba9d5">&#9670;&nbsp;</a></span>CreatePopupMenu()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HMENU CreatePopupMenu </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02507">2507</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02508"></a><span class="lineno"> 2508</span>&#160;{</div>
<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span>&#160;    <span class="keywordflow">return</span> (HMENU)<a class="code" href="a00362.html#a0b2d5f1d4b96dd098bb7e3db736382b2">NtUserCallNoParamTranslate</a>(<a class="code" href="a00335.html#a5514473031dce16f7e6b8c3d240c27a4">SFI__CREATEPOPUPMENU</a>);</div>
<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03232">NtUserCallNoParamTranslate()</a> , 以及 <a class="el" href="a00335_source.html#l00005">SFI__CREATEPOPUPMENU</a>.</p>

</div>
</div>
<a id="a13e8fadd3ac9636b62cb53f1c8a07fbc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a13e8fadd3ac9636b62cb53f1c8a07fbc">&#9670;&nbsp;</a></span>CreateWindowStationA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA CreateWindowStationA </td>
          <td>(</td>
          <td class="paramtype">LPSTR&#160;</td>
          <td class="paramname"><em>pwinsta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwReserved</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01854">1854</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01859"></a><span class="lineno"> 1859</span>&#160;{</div>
<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span>&#160;    UNICODE_STRING UnicodeString;</div>
<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span>&#160;    HWINSTA hwinsta;</div>
<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span>&#160; </div>
<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span>&#160;    <span class="keywordflow">if</span> (!RtlCreateUnicodeStringFromAsciiz(&amp;UnicodeString, pwinsta))</div>
<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span>&#160; </div>
<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span>&#160;    hwinsta = <a class="code" href="a00026.html#adcd27bceb3499bb7ba614750b143c278">CommonCreateWindowStation</a>(&amp;UnicodeString, dwReserved, amRequest, lpsa);</div>
<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span>&#160; </div>
<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span>&#160;    RtlFreeUnicodeString(&amp;UnicodeString);</div>
<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span>&#160; </div>
<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span>&#160;    <span class="keywordflow">return</span> hwinsta;</div>
<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01787">CommonCreateWindowStation()</a>.</p>

</div>
</div>
<a id="af7244f3066e54931182de80200f0e85d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af7244f3066e54931182de80200f0e85d">&#9670;&nbsp;</a></span>CreateWindowStationW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA CreateWindowStationW </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>pwinsta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwReserved</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_ATTRIBUTES&#160;</td>
          <td class="paramname"><em>lpsa</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01873">1873</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01878"></a><span class="lineno"> 1878</span>&#160;{</div>
<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span>&#160;    UNICODE_STRING strWinSta;</div>
<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span>&#160; </div>
<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span>&#160;    RtlInitUnicodeString(&amp;strWinSta, pwinsta);</div>
<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span>&#160; </div>
<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#adcd27bceb3499bb7ba614750b143c278">CommonCreateWindowStation</a>(&amp;strWinSta, dwReserved, amRequest, lpsa);</div>
<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01787">CommonCreateWindowStation()</a>.</p>

</div>
</div>
<a id="a8e46209cec406469685858ff0ac2bad5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8e46209cec406469685858ff0ac2bad5">&#9670;&nbsp;</a></span>CurrentTaskLock()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> CurrentTaskLock </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>hlck</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02518">2518</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02520"></a><span class="lineno"> 2520</span>&#160;{</div>
<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(hlck, <a class="code" href="a00335.html#a96b9c8a6274a0299a507ec1fdba997ae">SFI_CURRENTTASKLOCK</a>);</div>
<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00036">SFI_CURRENTTASKLOCK</a>.</p>

</div>
</div>
<a id="af5361d8c9ee2d1ddd9b99a8e597ed6d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af5361d8c9ee2d1ddd9b99a8e597ed6d6">&#9670;&nbsp;</a></span>DeleteClientClipboardHandle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL DeleteClientClipboardHandle </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hobjDelete</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFormat</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00222">222</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00225"></a><span class="lineno">  225</span>&#160;{</div>
<div class="line"><a name="l00226"></a><span class="lineno">  226</span>&#160;    LPMETAFILEPICT lpMFP;</div>
<div class="line"><a name="l00227"></a><span class="lineno">  227</span>&#160; </div>
<div class="line"><a name="l00228"></a><span class="lineno">  228</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(hobjDelete != (HANDLE)0);</div>
<div class="line"><a name="l00229"></a><span class="lineno">  229</span>&#160; </div>
<div class="line"><a name="l00230"></a><span class="lineno">  230</span>&#160;    <span class="keywordflow">switch</span> (dwFormat) {</div>
<div class="line"><a name="l00231"></a><span class="lineno">  231</span>&#160;    <span class="keywordflow">case</span> CF_BITMAP:</div>
<div class="line"><a name="l00232"></a><span class="lineno">  232</span>&#160;    <span class="keywordflow">case</span> CF_DSPBITMAP:</div>
<div class="line"><a name="l00233"></a><span class="lineno">  233</span>&#160;    <span class="keywordflow">case</span> CF_PALETTE:</div>
<div class="line"><a name="l00234"></a><span class="lineno">  234</span>&#160;        <span class="comment">// Does nothing (should remove).</span></div>
<div class="line"><a name="l00235"></a><span class="lineno">  235</span>&#160;        <span class="comment">//</span></div>
<div class="line"><a name="l00236"></a><span class="lineno">  236</span>&#160;        <span class="comment">//GdiDeleteLocalObject((ULONG)hobjDelete);</span></div>
<div class="line"><a name="l00237"></a><span class="lineno">  237</span>&#160;        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00238"></a><span class="lineno">  238</span>&#160; </div>
<div class="line"><a name="l00239"></a><span class="lineno">  239</span>&#160;    <span class="keywordflow">case</span> CF_METAFILEPICT:</div>
<div class="line"><a name="l00240"></a><span class="lineno">  240</span>&#160;    <span class="keywordflow">case</span> CF_DSPMETAFILEPICT:</div>
<div class="line"><a name="l00241"></a><span class="lineno">  241</span>&#160;        USERGLOBALLOCK(hobjDelete, lpMFP);</div>
<div class="line"><a name="l00242"></a><span class="lineno">  242</span>&#160;        <span class="keywordflow">if</span> (lpMFP) {</div>
<div class="line"><a name="l00243"></a><span class="lineno">  243</span>&#160;            DeleteMetaFile(lpMFP-&gt;hMF);</div>
<div class="line"><a name="l00244"></a><span class="lineno">  244</span>&#160;            USERGLOBALUNLOCK(hobjDelete);</div>
<div class="line"><a name="l00245"></a><span class="lineno">  245</span>&#160;            UserGlobalFree(hobjDelete);</div>
<div class="line"><a name="l00246"></a><span class="lineno">  246</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00247"></a><span class="lineno">  247</span>&#160;            <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(0);</div>
<div class="line"><a name="l00248"></a><span class="lineno">  248</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l00249"></a><span class="lineno">  249</span>&#160;        }</div>
<div class="line"><a name="l00250"></a><span class="lineno">  250</span>&#160;        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00251"></a><span class="lineno">  251</span>&#160; </div>
<div class="line"><a name="l00252"></a><span class="lineno">  252</span>&#160;    <span class="keywordflow">case</span> CF_ENHMETAFILE:</div>
<div class="line"><a name="l00253"></a><span class="lineno">  253</span>&#160;    <span class="keywordflow">case</span> CF_DSPENHMETAFILE:</div>
<div class="line"><a name="l00254"></a><span class="lineno">  254</span>&#160;        DeleteEnhMetaFile((HENHMETAFILE)hobjDelete);</div>
<div class="line"><a name="l00255"></a><span class="lineno">  255</span>&#160;        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00256"></a><span class="lineno">  256</span>&#160; </div>
<div class="line"><a name="l00257"></a><span class="lineno">  257</span>&#160;    <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00258"></a><span class="lineno">  258</span>&#160;    <span class="comment">//case CF_TEXT:</span></div>
<div class="line"><a name="l00259"></a><span class="lineno">  259</span>&#160;    <span class="comment">//case CF_OEMTEXT:</span></div>
<div class="line"><a name="l00260"></a><span class="lineno">  260</span>&#160;    <span class="comment">//case CF_UNICODETEXT:</span></div>
<div class="line"><a name="l00261"></a><span class="lineno">  261</span>&#160;    <span class="comment">//case CF_LOCALE:</span></div>
<div class="line"><a name="l00262"></a><span class="lineno">  262</span>&#160;    <span class="comment">//case CF_DSPTEXT:</span></div>
<div class="line"><a name="l00263"></a><span class="lineno">  263</span>&#160;    <span class="comment">//case CF_DIB:</span></div>
<div class="line"><a name="l00264"></a><span class="lineno">  264</span>&#160;        <span class="keywordflow">if</span> (UserGlobalFree(hobjDelete)) {</div>
<div class="line"><a name="l00265"></a><span class="lineno">  265</span>&#160;            <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;CloseClipboard UserGlobalFree(%lX) Failed\n&quot;</span>, hobjDelete);</div>
<div class="line"><a name="l00266"></a><span class="lineno">  266</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l00267"></a><span class="lineno">  267</span>&#160;        }</div>
<div class="line"><a name="l00268"></a><span class="lineno">  268</span>&#160;        <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00269"></a><span class="lineno">  269</span>&#160;    }</div>
<div class="line"><a name="l00270"></a><span class="lineno">  270</span>&#160; </div>
<div class="line"><a name="l00271"></a><span class="lineno">  271</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00272"></a><span class="lineno">  272</span>&#160;<span class="comment">     * Deleted successfully</span></div>
<div class="line"><a name="l00273"></a><span class="lineno">  273</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00274"></a><span class="lineno">  274</span>&#160;    <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l00275"></a><span class="lineno">  275</span>&#160; </div>
<div class="line"><a name="l00276"></a><span class="lineno">  276</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00132">RIPMSG1</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l00286">ClientEmptyClipboard()</a> , 以及 <a class="el" href="a00026_source.html#l00713">SetClipboardData()</a>.</p>

</div>
</div>
<a id="a745a3b3cebe9f5d7766f7d670882b37f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a745a3b3cebe9f5d7766f7d670882b37f">&#9670;&nbsp;</a></span>DeregisterShellHookWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL DeregisterShellHookWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03075">3075</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03077"></a><span class="lineno"> 3077</span>&#160;{</div>
<div class="line"><a name="l03078"></a><span class="lineno"> 3078</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a8f3ab19504904b931b9511a403b28f3a">NtUserCallHwnd</a>(hwnd, <a class="code" href="a00335.html#a2265f6e381a2db2075e6c45cd6033f8a">SFI__DEREGISTERSHELLHOOKWINDOW</a>);</div>
<div class="line"><a name="l03079"></a><span class="lineno"> 3079</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03284">NtUserCallHwnd()</a> , 以及 <a class="el" href="a00335_source.html#l00065">SFI__DEREGISTERSHELLHOOKWINDOW</a>.</p>

</div>
</div>
<a id="a3aa5c95fd0d2389c177b9db1d5b93799"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3aa5c95fd0d2389c177b9db1d5b93799">&#9670;&nbsp;</a></span>DestroyCaret()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL DestroyCaret </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02530">2530</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02531"></a><span class="lineno"> 2531</span>&#160;{</div>
<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#ab64eb963b74811908a5b9bc99d77b8ac">NtUserCallNoParam</a>(<a class="code" href="a00335.html#ac7405ebaeecc3cdf58f8f1e26902467e">SFI__DESTROYCARET</a>);</div>
<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03204">NtUserCallNoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00008">SFI__DESTROYCARET</a>.</p>

</div>
</div>
<a id="adc89923b3853de7ea5c658831193f408"></a>
<h2 class="memtitle"><span class="permalink"><a href="#adc89923b3853de7ea5c658831193f408">&#9670;&nbsp;</a></span>DirectedYield()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void DirectedYield </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwThreadId</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02541">2541</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02543"></a><span class="lineno"> 2543</span>&#160;{</div>
<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span>&#160;    <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(dwThreadId, <a class="code" href="a00335.html#a3491d8f26b5092f0b2bf3cfe2701e5a6">SFI_XXXDIRECTEDYIELD</a>);</div>
<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00040">SFI_XXXDIRECTEDYIELD</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="a44d5c2db04811e044da712dd588b5e02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44d5c2db04811e044da712dd588b5e02">&#9670;&nbsp;</a></span>DispatchClientMessage()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">LONG DispatchClientMessage </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>&#160;</td>
          <td class="paramname"><em>pwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>message</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">WPARAM&#160;</td>
          <td class="paramname"><em>wParam</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPARAM&#160;</td>
          <td class="paramname"><em>lParam</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>pfn</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02383">2383</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02389"></a><span class="lineno"> 2389</span>&#160;{</div>
<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span>&#160; </div>
<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span>&#160;<span class="comment">     * Add assert to catch dispatching messages to a thread not associated</span></div>
<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span>&#160;<span class="comment">     * with a desktop.</span></div>
<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(GetClientInfo()-&gt;ulClientDelta != 0);</div>
<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span>&#160; </div>
<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span>&#160;<span class="comment">     * More complicate then regular CALLPROC_WOWCHECK() we want to get the</span></div>
<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span>&#160;<span class="comment">     * PWW so wow doesn&#39;t have to</span></div>
<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span>&#160;    <span class="keywordflow">if</span> (WNDPROC_WOW &amp; (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)pfn) {</div>
<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span>&#160;        <span class="keywordflow">return</span> (*<a class="code" href="a00020.html#afb0ebf0c66010cf139ab4f7a9d4542b1">pfnWowWndProcEx</a>)(HW(pwnd), message, wParam, lParam, (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)pfn, pwnd-&gt;adwWOW);</div>
<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span>&#160;        <span class="keywordflow">return</span> ((WNDPROC)pfn)(HW(pwnd), message, wParam, lParam);</div>
<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span>&#160;    }</div>
<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00020_source.html#l00139">pfnWowWndProcEx</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00035_source.html#l00749">ClientThreadSetup()</a>.</p>

</div>
</div>
<a id="ad7edcb25b9838bbab81702e8370e259a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad7edcb25b9838bbab81702e8370e259a">&#9670;&nbsp;</a></span>DrawIcon()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI DrawIcon </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HICON&#160;</td>
          <td class="paramname"><em>hicon</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01043">1043</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01044"></a><span class="lineno"> 1044</span>&#160;{</div>
<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#abfee4a9912184ce8c841fe748dcaf1ee">DrawIconEx</a>(hdc, x, y, hicon, 0, 0, 0, 0, DI_NORMAL | DI_COMPAT | DI_DEFAULTSIZE );</div>
<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01049">DrawIconEx()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00890_source.html#l00648">DrawIconCallBack()</a>.</p>

</div>
</div>
<a id="abfee4a9912184ce8c841fe748dcaf1ee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abfee4a9912184ce8c841fe748dcaf1ee">&#9670;&nbsp;</a></span>DrawIconEx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL DrawIconEx </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HICON&#160;</td>
          <td class="paramname"><em>hIcon</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>istepIfAniCur</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HBRUSH&#160;</td>
          <td class="paramname"><em>hbrFlickerFreeDraw</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>diFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01049">1049</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01052"></a><span class="lineno"> 1052</span>&#160;{</div>
<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span>&#160;    <a class="code" href="a02469.html">DRAWICONEXDATA</a> did;</div>
<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span>&#160;    HBITMAP hbmT;</div>
<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span>&#160;    HBITMAP hbmMask;</div>
<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span>&#160;    HBITMAP hbmColor;</div>
<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span>&#160;    BOOL retval = FALSE;</div>
<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span>&#160;    HDC hdcr;</div>
<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span>&#160; </div>
<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span>&#160;    <span class="keywordflow">if</span> (diFlags &amp; ~DI_VALID) {</div>
<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span>&#160;        <a class="code" href="a00371.html#ae61d954062a9ece52e350e54cad9a23d">RIPERR0</a>(ERROR_INVALID_PARAMETER, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span>&#160;        <span class="keywordflow">return</span>(FALSE);</div>
<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span>&#160;    }</div>
<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span>&#160; </div>
<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span>&#160;    <span class="keywordflow">if</span> (diFlags &amp; DI_DEFAULTSIZE) {</div>
<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span>&#160;        cx = 0;</div>
<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span>&#160;        <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a> = 0;</div>
<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span>&#160;    }</div>
<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span>&#160; </div>
<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="a03218.html#aa4a3b004dd5a64b5e7d718f525a86db6">IsMetaFile</a>(hdc)) {</div>
<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span>&#160;        hdcr = GdiConvertAndCheckDC(hdc);</div>
<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span>&#160;        <span class="keywordflow">if</span> (hdcr == (HDC)0)</div>
<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span>&#160; </div>
<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span>&#160;        <span class="keywordflow">if</span> (hbrFlickerFreeDraw) {</div>
<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span>&#160;            FIXUP_HANDLE( hbrFlickerFreeDraw );</div>
<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span>&#160;            <span class="keywordflow">if</span> (!hbrFlickerFreeDraw)</div>
<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span>&#160;                <span class="keywordflow">return</span> FALSE ;</div>
<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span>&#160;        }</div>
<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span>&#160; </div>
<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="a00362.html#a8d69ef3a49eb16da80967dbabaf5dbb3">NtUserDrawIconEx</a>(hdcr, x, y, hIcon, cx, <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, istepIfAniCur,</div>
<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span>&#160;                                hbrFlickerFreeDraw, diFlags, FALSE, &amp;did);</div>
<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span>&#160;    }</div>
<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span>&#160; </div>
<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="a00362.html#a8d69ef3a49eb16da80967dbabaf5dbb3">NtUserDrawIconEx</a>(NULL, 0, 0, hIcon, cx, <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, 0, NULL, 0, TRUE, &amp;did)) {</div>
<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span>&#160;    }</div>
<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span>&#160; </div>
<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span>&#160;    <span class="keywordflow">if</span> (diFlags == 0)</div>
<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span>&#160;        <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span>&#160; </div>
<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span>&#160;    RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#abaa886e5d183510c7ba0aa32e8b083d3">gcsHdc</a>);</div>
<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span>&#160; </div>
<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span>&#160;<span class="comment">     * Setup the attributes</span></div>
<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span>&#160;    <span class="keywordflow">if</span> (!cx)</div>
<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span>&#160;        cx = did.<a class="code" href="a02469.html#af905a9989361d094908ad04e08f6429d">cx</a>;</div>
<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>)</div>
<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span>&#160;        <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a> = did.<a class="code" href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">cy</a> / 2;</div>
<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span>&#160; </div>
<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span>&#160;    SetTextColor(hdc, 0x00000000L);</div>
<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span>&#160;    SetBkColor(hdc, 0x00FFFFFFL);</div>
<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span>&#160; </div>
<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span>&#160;    <span class="keywordflow">if</span> ((diFlags &amp; DI_MASK) || (did.<a class="code" href="a02469.html#a9dc9908a9040a39812afd6de92ab138d">hbmColor</a> == NULL)) {</div>
<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span>&#160;        hbmMask = did.<a class="code" href="a02469.html#aff6602772c3f294355b9662022fcb78e">hbmMask</a>;</div>
<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span>&#160;        FIXUP_HANDLE(hbmMask);</div>
<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span>&#160;    }</div>
<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span>&#160; </div>
<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span>&#160;    <span class="keywordflow">if</span> ((diFlags &amp; DI_IMAGE) &amp;&amp; (did.<a class="code" href="a02469.html#a9dc9908a9040a39812afd6de92ab138d">hbmColor</a> != NULL)) {</div>
<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span>&#160;        hbmColor = did.<a class="code" href="a02469.html#a9dc9908a9040a39812afd6de92ab138d">hbmColor</a>;</div>
<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span>&#160;        FIXUP_HANDLE(hbmColor);</div>
<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span>&#160;    }</div>
<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span>&#160; </div>
<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span>&#160;    <span class="keywordflow">if</span> (diFlags &amp; DI_MASK) {</div>
<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span>&#160; </div>
<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span>&#160;        <span class="keywordflow">if</span> (hbmMask) {</div>
<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span>&#160; </div>
<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span>&#160;            hbmT = SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>, hbmMask);</div>
<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span>&#160;            StretchBlt(hdc,</div>
<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span>&#160;                       x,</div>
<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span>&#160;                       y,</div>
<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span>&#160;                       cx,</div>
<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span>&#160;                       <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span>&#160;                       <a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>,</div>
<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span>&#160;                       0,</div>
<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span>&#160;                       0,</div>
<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span>&#160;                       did.<a class="code" href="a02469.html#af905a9989361d094908ad04e08f6429d">cx</a>,</div>
<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span>&#160;                       did.<a class="code" href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">cy</a> / 2,</div>
<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span>&#160;                       SRCAND);</div>
<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span>&#160;            SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>,hbmT);</div>
<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span>&#160;            retval = TRUE;</div>
<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span>&#160;        }</div>
<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span>&#160;    }</div>
<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span>&#160; </div>
<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span>&#160;    <span class="keywordflow">if</span> (diFlags &amp; DI_IMAGE) {</div>
<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span>&#160; </div>
<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span>&#160;        <span class="keywordflow">if</span> (did.<a class="code" href="a02469.html#a9dc9908a9040a39812afd6de92ab138d">hbmColor</a> != NULL) {</div>
<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span>&#160;            <span class="keywordflow">if</span> (hbmColor) {</div>
<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span>&#160;                hbmT = SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>, hbmColor);</div>
<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span>&#160;                StretchBlt(hdc,</div>
<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span>&#160;                           x,</div>
<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span>&#160;                           y,</div>
<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span>&#160;                           cx,</div>
<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span>&#160;                           <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span>&#160;                           <a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>,</div>
<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span>&#160;                           0,</div>
<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span>&#160;                           0,</div>
<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span>&#160;                           did.<a class="code" href="a02469.html#af905a9989361d094908ad04e08f6429d">cx</a>,</div>
<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span>&#160;                           did.<a class="code" href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">cy</a> / 2,</div>
<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span>&#160;                           SRCINVERT);</div>
<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span>&#160;                SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>, hbmT);</div>
<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span>&#160;                retval = TRUE;</div>
<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span>&#160;            }</div>
<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span>&#160;            <span class="keywordflow">if</span> (hbmMask) {</div>
<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span>&#160;                hbmT = SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>, hbmMask);</div>
<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span>&#160;                StretchBlt(hdc,</div>
<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span>&#160;                           x,</div>
<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span>&#160;                           y,</div>
<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span>&#160;                           cx,</div>
<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span>&#160;                           <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span>&#160;                           <a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>,</div>
<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span>&#160;                           0,</div>
<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span>&#160;                           did.<a class="code" href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">cy</a> / 2,</div>
<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span>&#160;                           did.<a class="code" href="a02469.html#af905a9989361d094908ad04e08f6429d">cx</a>,</div>
<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span>&#160;                           did.<a class="code" href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">cy</a> / 2,</div>
<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span>&#160;                           SRCINVERT);</div>
<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span>&#160;                SelectObject(<a class="code" href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a>, hbmT);</div>
<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span>&#160;                retval = TRUE;</div>
<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span>&#160;            }</div>
<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span>&#160;        }</div>
<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span>&#160;    }</div>
<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span>&#160;    RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#abaa886e5d183510c7ba0aa32e8b083d3">gcsHdc</a>);</div>
<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span>&#160; </div>
<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span>&#160;    <span class="keywordflow">return</span> retval;</div>
<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l00336">_DRAWICONEXDATA::cx</a>, <a class="el" href="a00365_source.html#l00337">_DRAWICONEXDATA::cy</a>, <a class="el" href="a00716_source.html#l00456">cy</a>, <a class="el" href="a00020_source.html#l00096">gcsHdc</a>, <a class="el" href="a00020_source.html#l00099">ghdcBits2</a>, <a class="el" href="a00365_source.html#l00335">_DRAWICONEXDATA::hbmColor</a>, <a class="el" href="a00365_source.html#l00334">_DRAWICONEXDATA::hbmMask</a>, <a class="el" href="a03218_source.html#l00027">IsMetaFile()</a>, <a class="el" href="a03614_source.html#l01285">NtUserDrawIconEx()</a>, <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a> , 以及 <a class="el" href="a00371_source.html#l00119">RIPERR0</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00206_source.html#l00073">ClientDrawState()</a>, <a class="el" href="a00026_source.html#l01043">DrawIcon()</a>, <a class="el" href="a00047_source.html#l01733">LoadBmp()</a> , 以及 <a class="el" href="a00248_source.html#l00402">xxxStaticPaint()</a>.</p>

</div>
</div>
<a id="a5a97dec9640e654c0d5aa4dc67fd2bc6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5a97dec9640e654c0d5aa4dc67fd2bc6">&#9670;&nbsp;</a></span>DrawMenuBar()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL DrawMenuBar </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02553">2553</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02555"></a><span class="lineno"> 2555</span>&#160;{</div>
<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#a63635bbcd2b39df786ce1f5f3680b36f">SFI_XXXDRAWMENUBAR</a>);</div>
<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a> , 以及 <a class="el" href="a00335_source.html#l00041">SFI_XXXDRAWMENUBAR</a>.</p>

</div>
</div>
<a id="a9b7186ac4e2f1789214665161276b02e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9b7186ac4e2f1789214665161276b02e">&#9670;&nbsp;</a></span>EmptyClipboard()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EmptyClipboard </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02565">2565</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02566"></a><span class="lineno"> 2566</span>&#160;{</div>
<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)NULL, <a class="code" href="a00335.html#af12693680edbb55b940ef7a4c11a162e">SFI_XXXEMPTYCLIPBOARD</a>);</div>
<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00042">SFI_XXXEMPTYCLIPBOARD</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00125_source.html#l02100">ECCopy()</a> , 以及 <a class="el" href="a00953_source.html#l00167">ProfClipboardGroup()</a>.</p>

</div>
</div>
<a id="aeb67af6aa06ffff99546c1cec33aaddf"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aeb67af6aa06ffff99546c1cec33aaddf">&#9670;&nbsp;</a></span>EnableWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EnableWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bEnable</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02576">2576</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02579"></a><span class="lineno"> 2579</span>&#160;{</div>
<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a>(hwnd, bEnable,</div>
<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span>&#160;                                         <a class="code" href="a00335.html#aef7c8685e52b7383afab2f4c172ed0f4">SFI_XXXENABLEWINDOW</a>);</div>
<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03394">NtUserCallHwndParamLock()</a> , 以及 <a class="el" href="a00335_source.html#l00043">SFI_XXXENABLEWINDOW</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00953_source.html#l01055">ClearDlg()</a>.</p>

</div>
</div>
<a id="a6c11b195faadcd0bacfc803faedc64f0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6c11b195faadcd0bacfc803faedc64f0">&#9670;&nbsp;</a></span>EndDeferWindowPos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL EndDeferWindowPos </td>
          <td>(</td>
          <td class="paramtype">HDWP&#160;</td>
          <td class="paramname"><em>hWinPosInfo</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02448">2448</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02450"></a><span class="lineno"> 2450</span>&#160;{</div>
<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a8c789c94f5d786b6ee30f9b02fffc2f5">NtUserEndDeferWindowPosEx</a>(hWinPosInfo, FALSE);</div>
<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l01444">NtUserEndDeferWindowPosEx()</a>.</p>

</div>
</div>
<a id="afb7910312d044e7d6f90677e1153b13c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afb7910312d044e7d6f90677e1153b13c">&#9670;&nbsp;</a></span>EnumClipboardFormats()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> EnumClipboardFormats </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>fmt</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02590">2590</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02592"></a><span class="lineno"> 2592</span>&#160;{</div>
<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span>&#160;<span class="comment">     * So apps can tell if the API failed or just ran out of formats</span></div>
<div class="line"><a name="l02595"></a><span class="lineno"> 2595</span>&#160;<span class="comment">     * we &quot;clear&quot; the last error.</span></div>
<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span>&#160;    <a class="code" href="a00371.html#ade1c433448844e5ca2b42e3917d013a8">UserSetLastError</a>(ERROR_SUCCESS);</div>
<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span>&#160; </div>
<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(fmt, <a class="code" href="a00335.html#a0434f204654f9d3efa1c9b4368553576">SFI__ENUMCLIPBOARDFORMATS</a>);</div>
<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l00207">_HANDLENODE::fmt</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a>, <a class="el" href="a00335_source.html#l00009">SFI__ENUMCLIPBOARDFORMATS</a>, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a> , 以及 <a class="el" href="a03197_source.html#l00390">UserSetLastError()</a>.</p>

</div>
</div>
<a id="aba49f368717847cbda022df52ddc1061"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aba49f368717847cbda022df52ddc1061">&#9670;&nbsp;</a></span>ExcludeUpdateRgn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI ExcludeUpdateRgn </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hDC</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hWnd</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01181">1181</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01182"></a><span class="lineno"> 1182</span>&#160;{</div>
<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span>&#160;    FIXUP_HANDLE (hDC);</div>
<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span>&#160;    <span class="keywordflow">if</span> (hDC == NULL)</div>
<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span>&#160;        <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span>&#160; </div>
<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00362.html#ac62ce401fdf02c98865a290faebec897">NtUserExcludeUpdateRgn</a>(hDC,hWnd));</div>
<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l05230">NtUserExcludeUpdateRgn()</a>.</p>

</div>
</div>
<a id="af3535f1517b0704ab41081333d8c5594"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af3535f1517b0704ab41081333d8c5594">&#9670;&nbsp;</a></span>FlashWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL FlashWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bInvert</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02608">2608</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02611"></a><span class="lineno"> 2611</span>&#160;{</div>
<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a>(hwnd, bInvert,</div>
<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span>&#160;                                         <a class="code" href="a00335.html#aae0ae6fe77a682940a8f2a239a57b24d">SFI_XXXFLASHWINDOW</a>);</div>
<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03394">NtUserCallHwndParamLock()</a> , 以及 <a class="el" href="a00335_source.html#l00044">SFI_XXXFLASHWINDOW</a>.</p>

</div>
</div>
<a id="afeedc7ce2c7778f420d0357f1ef24e6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afeedc7ce2c7778f420d0357f1ef24e6e">&#9670;&nbsp;</a></span>GetActiveKeyboardName()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VOID GetActiveKeyboardName </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>lpszName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03175">3175</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03177"></a><span class="lineno"> 3177</span>&#160;{</div>
<div class="line"><a name="l03178"></a><span class="lineno"> 3178</span>&#160;    LPTSTR szKbdActive = TEXT(<span class="stringliteral">&quot;Active&quot;</span>);</div>
<div class="line"><a name="l03179"></a><span class="lineno"> 3179</span>&#160;    LPTSTR szKbdLayout = TEXT(<span class="stringliteral">&quot;Keyboard Layout&quot;</span>);</div>
<div class="line"><a name="l03180"></a><span class="lineno"> 3180</span>&#160;    LPTSTR szKbdLayoutPreload = TEXT(<span class="stringliteral">&quot;Keyboard Layout\\Preload&quot;</span>);</div>
<div class="line"><a name="l03181"></a><span class="lineno"> 3181</span>&#160;    NTSTATUS rc;</div>
<div class="line"><a name="l03182"></a><span class="lineno"> 3182</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> cbSize;</div>
<div class="line"><a name="l03183"></a><span class="lineno"> 3183</span>&#160;    HANDLE UserKeyHandle, hKey, hKeyPreload;</div>
<div class="line"><a name="l03184"></a><span class="lineno"> 3184</span>&#160;    OBJECT_ATTRIBUTES ObjA;</div>
<div class="line"><a name="l03185"></a><span class="lineno"> 3185</span>&#160;    UNICODE_STRING UnicodeString;</div>
<div class="line"><a name="l03186"></a><span class="lineno"> 3186</span>&#160;    ULONG CreateDisposition;</div>
<div class="line"><a name="l03187"></a><span class="lineno"> 3187</span>&#160;    <span class="keyword">struct </span>{</div>
<div class="line"><a name="l03188"></a><span class="lineno"> 3188</span>&#160;        KEY_VALUE_PARTIAL_INFORMATION KeyInfo;</div>
<div class="line"><a name="l03189"></a><span class="lineno"> 3189</span>&#160;        WCHAR KeyLayoutId[KL_NAMELENGTH];</div>
<div class="line"><a name="l03190"></a><span class="lineno"> 3190</span>&#160;    } KeyValueId;</div>
<div class="line"><a name="l03191"></a><span class="lineno"> 3191</span>&#160; </div>
<div class="line"><a name="l03192"></a><span class="lineno"> 3192</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03193"></a><span class="lineno"> 3193</span>&#160;<span class="comment">     * Load initial keyboard name ( HKEY_CURRENT_USER\Keyboard Layout\Preload\1 )</span></div>
<div class="line"><a name="l03194"></a><span class="lineno"> 3194</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03195"></a><span class="lineno"> 3195</span>&#160;    rc = RtlOpenCurrentUser( MAXIMUM_ALLOWED, &amp;UserKeyHandle );</div>
<div class="line"><a name="l03196"></a><span class="lineno"> 3196</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03197"></a><span class="lineno"> 3197</span>&#160;    {</div>
<div class="line"><a name="l03198"></a><span class="lineno"> 3198</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could NOT open HKEY_CURRENT_USER (%lx).\n&quot;</span>, rc );</div>
<div class="line"><a name="l03199"></a><span class="lineno"> 3199</span>&#160;        wcscpy( lpszName, L<span class="stringliteral">&quot;00000409&quot;</span> );</div>
<div class="line"><a name="l03200"></a><span class="lineno"> 3200</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03201"></a><span class="lineno"> 3201</span>&#160;    }</div>
<div class="line"><a name="l03202"></a><span class="lineno"> 3202</span>&#160; </div>
<div class="line"><a name="l03203"></a><span class="lineno"> 3203</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, szKbdLayoutPreload );</div>
<div class="line"><a name="l03204"></a><span class="lineno"> 3204</span>&#160;    InitializeObjectAttributes( &amp;ObjA,</div>
<div class="line"><a name="l03205"></a><span class="lineno"> 3205</span>&#160;                                &amp;UnicodeString,</div>
<div class="line"><a name="l03206"></a><span class="lineno"> 3206</span>&#160;                                OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l03207"></a><span class="lineno"> 3207</span>&#160;                                UserKeyHandle,</div>
<div class="line"><a name="l03208"></a><span class="lineno"> 3208</span>&#160;                                NULL );</div>
<div class="line"><a name="l03209"></a><span class="lineno"> 3209</span>&#160;    rc = NtOpenKey( &amp;hKey,</div>
<div class="line"><a name="l03210"></a><span class="lineno"> 3210</span>&#160;                    KEY_ALL_ACCESS,</div>
<div class="line"><a name="l03211"></a><span class="lineno"> 3211</span>&#160;                    &amp;ObjA );</div>
<div class="line"><a name="l03212"></a><span class="lineno"> 3212</span>&#160;    <span class="keywordflow">if</span> (NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03213"></a><span class="lineno"> 3213</span>&#160;    {</div>
<div class="line"><a name="l03214"></a><span class="lineno"> 3214</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03215"></a><span class="lineno"> 3215</span>&#160;<span class="comment">         *  Query the value from the registry.</span></div>
<div class="line"><a name="l03216"></a><span class="lineno"> 3216</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03217"></a><span class="lineno"> 3217</span>&#160;        RtlInitUnicodeString( &amp;UnicodeString, L<span class="stringliteral">&quot;1&quot;</span> );</div>
<div class="line"><a name="l03218"></a><span class="lineno"> 3218</span>&#160; </div>
<div class="line"><a name="l03219"></a><span class="lineno"> 3219</span>&#160;        rc = NtQueryValueKey( hKey,</div>
<div class="line"><a name="l03220"></a><span class="lineno"> 3220</span>&#160;                              &amp;UnicodeString,</div>
<div class="line"><a name="l03221"></a><span class="lineno"> 3221</span>&#160;                              KeyValuePartialInformation,</div>
<div class="line"><a name="l03222"></a><span class="lineno"> 3222</span>&#160;                              &amp;KeyValueId,</div>
<div class="line"><a name="l03223"></a><span class="lineno"> 3223</span>&#160;                              <span class="keyword">sizeof</span>(KeyValueId),</div>
<div class="line"><a name="l03224"></a><span class="lineno"> 3224</span>&#160;                              &amp;cbSize );</div>
<div class="line"><a name="l03225"></a><span class="lineno"> 3225</span>&#160; </div>
<div class="line"><a name="l03226"></a><span class="lineno"> 3226</span>&#160;        <span class="keywordflow">if</span> ( rc == STATUS_BUFFER_OVERFLOW ) {</div>
<div class="line"><a name="l03227"></a><span class="lineno"> 3227</span>&#160;            <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Buffer overflow.&quot;</span>);</div>
<div class="line"><a name="l03228"></a><span class="lineno"> 3228</span>&#160;            rc = STATUS_SUCCESS;</div>
<div class="line"><a name="l03229"></a><span class="lineno"> 3229</span>&#160;        }</div>
<div class="line"><a name="l03230"></a><span class="lineno"> 3230</span>&#160;        <span class="keywordflow">if</span> (NT_SUCCESS( rc )) {</div>
<div class="line"><a name="l03231"></a><span class="lineno"> 3231</span>&#160;            <a class="code" href="a00365.html#a2313d9960d832da75d595b73ff75d1dc">wcsncpycch</a>( lpszName, (LPWSTR)KeyValueId.KeyInfo.Data, KL_NAMELENGTH - 1 );</div>
<div class="line"><a name="l03232"></a><span class="lineno"> 3232</span>&#160;            lpszName[KL_NAMELENGTH - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03233"></a><span class="lineno"> 3233</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03234"></a><span class="lineno"> 3234</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l03235"></a><span class="lineno"> 3235</span>&#160;<span class="comment">             * Error reading value...use default</span></div>
<div class="line"><a name="l03236"></a><span class="lineno"> 3236</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l03237"></a><span class="lineno"> 3237</span>&#160;            wcscpy( lpszName, L<span class="stringliteral">&quot;00000409&quot;</span> );</div>
<div class="line"><a name="l03238"></a><span class="lineno"> 3238</span>&#160;        }</div>
<div class="line"><a name="l03239"></a><span class="lineno"> 3239</span>&#160; </div>
<div class="line"><a name="l03240"></a><span class="lineno"> 3240</span>&#160;        NtClose( hKey );</div>
<div class="line"><a name="l03241"></a><span class="lineno"> 3241</span>&#160;        NtClose( UserKeyHandle );</div>
<div class="line"><a name="l03242"></a><span class="lineno"> 3242</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03243"></a><span class="lineno"> 3243</span>&#160;    }</div>
<div class="line"><a name="l03244"></a><span class="lineno"> 3244</span>&#160; </div>
<div class="line"><a name="l03245"></a><span class="lineno"> 3245</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03246"></a><span class="lineno"> 3246</span>&#160;<span class="comment">     * NOTE: The code below is only executed the first time a user logs</span></div>
<div class="line"><a name="l03247"></a><span class="lineno"> 3247</span>&#160;<span class="comment">     *       on after an upgrade from NT3.x to NT4.0.</span></div>
<div class="line"><a name="l03248"></a><span class="lineno"> 3248</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03249"></a><span class="lineno"> 3249</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03250"></a><span class="lineno"> 3250</span>&#160;<span class="comment">     * The Preload key does not exist in the registry.  Try reading the</span></div>
<div class="line"><a name="l03251"></a><span class="lineno"> 3251</span>&#160;<span class="comment">     * old registry entry &quot;Keyboard Layout\Active&quot;.  If it exists, we</span></div>
<div class="line"><a name="l03252"></a><span class="lineno"> 3252</span>&#160;<span class="comment">     * convert it to the new style Preload key.</span></div>
<div class="line"><a name="l03253"></a><span class="lineno"> 3253</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03254"></a><span class="lineno"> 3254</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, szKbdLayout );</div>
<div class="line"><a name="l03255"></a><span class="lineno"> 3255</span>&#160;    InitializeObjectAttributes( &amp;ObjA,</div>
<div class="line"><a name="l03256"></a><span class="lineno"> 3256</span>&#160;                                &amp;UnicodeString,</div>
<div class="line"><a name="l03257"></a><span class="lineno"> 3257</span>&#160;                                OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l03258"></a><span class="lineno"> 3258</span>&#160;                                UserKeyHandle,</div>
<div class="line"><a name="l03259"></a><span class="lineno"> 3259</span>&#160;                                NULL );</div>
<div class="line"><a name="l03260"></a><span class="lineno"> 3260</span>&#160;    rc = NtOpenKey( &amp;hKey,</div>
<div class="line"><a name="l03261"></a><span class="lineno"> 3261</span>&#160;                    KEY_ALL_ACCESS,</div>
<div class="line"><a name="l03262"></a><span class="lineno"> 3262</span>&#160;                    &amp;ObjA );</div>
<div class="line"><a name="l03263"></a><span class="lineno"> 3263</span>&#160; </div>
<div class="line"><a name="l03264"></a><span class="lineno"> 3264</span>&#160;    NtClose( UserKeyHandle );</div>
<div class="line"><a name="l03265"></a><span class="lineno"> 3265</span>&#160; </div>
<div class="line"><a name="l03266"></a><span class="lineno"> 3266</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03267"></a><span class="lineno"> 3267</span>&#160;    {</div>
<div class="line"><a name="l03268"></a><span class="lineno"> 3268</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could not determine active keyboard layout (%lx).\n&quot;</span>, rc  );</div>
<div class="line"><a name="l03269"></a><span class="lineno"> 3269</span>&#160;        wcscpy( lpszName, L<span class="stringliteral">&quot;00000409&quot;</span> );</div>
<div class="line"><a name="l03270"></a><span class="lineno"> 3270</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03271"></a><span class="lineno"> 3271</span>&#160;    }</div>
<div class="line"><a name="l03272"></a><span class="lineno"> 3272</span>&#160; </div>
<div class="line"><a name="l03273"></a><span class="lineno"> 3273</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03274"></a><span class="lineno"> 3274</span>&#160;<span class="comment">     *  Query the value from the registry.</span></div>
<div class="line"><a name="l03275"></a><span class="lineno"> 3275</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03276"></a><span class="lineno"> 3276</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, szKbdActive );</div>
<div class="line"><a name="l03277"></a><span class="lineno"> 3277</span>&#160; </div>
<div class="line"><a name="l03278"></a><span class="lineno"> 3278</span>&#160;    rc = NtQueryValueKey( hKey,</div>
<div class="line"><a name="l03279"></a><span class="lineno"> 3279</span>&#160;                          &amp;UnicodeString,</div>
<div class="line"><a name="l03280"></a><span class="lineno"> 3280</span>&#160;                          KeyValuePartialInformation,</div>
<div class="line"><a name="l03281"></a><span class="lineno"> 3281</span>&#160;                          &amp;KeyValueId,</div>
<div class="line"><a name="l03282"></a><span class="lineno"> 3282</span>&#160;                          <span class="keyword">sizeof</span>(KeyValueId),</div>
<div class="line"><a name="l03283"></a><span class="lineno"> 3283</span>&#160;                          &amp;cbSize );</div>
<div class="line"><a name="l03284"></a><span class="lineno"> 3284</span>&#160; </div>
<div class="line"><a name="l03285"></a><span class="lineno"> 3285</span>&#160;    <span class="keywordflow">if</span> ( rc == STATUS_BUFFER_OVERFLOW ) {</div>
<div class="line"><a name="l03286"></a><span class="lineno"> 3286</span>&#160;        <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Buffer overflow.&quot;</span>);</div>
<div class="line"><a name="l03287"></a><span class="lineno"> 3287</span>&#160;        rc = STATUS_SUCCESS;</div>
<div class="line"><a name="l03288"></a><span class="lineno"> 3288</span>&#160;    }</div>
<div class="line"><a name="l03289"></a><span class="lineno"> 3289</span>&#160;    <span class="keywordflow">if</span> (NT_SUCCESS( rc )) {</div>
<div class="line"><a name="l03290"></a><span class="lineno"> 3290</span>&#160;        <a class="code" href="a00365.html#a2313d9960d832da75d595b73ff75d1dc">wcsncpycch</a>( lpszName, (LPWSTR)KeyValueId.KeyInfo.Data, KL_NAMELENGTH - 1 );</div>
<div class="line"><a name="l03291"></a><span class="lineno"> 3291</span>&#160;        lpszName[KL_NAMELENGTH - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03292"></a><span class="lineno"> 3292</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03293"></a><span class="lineno"> 3293</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03294"></a><span class="lineno"> 3294</span>&#160;<span class="comment">         * Error reading value...use default</span></div>
<div class="line"><a name="l03295"></a><span class="lineno"> 3295</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03296"></a><span class="lineno"> 3296</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could not query active keyboard layout (%lx).\n&quot;</span>, rc );</div>
<div class="line"><a name="l03297"></a><span class="lineno"> 3297</span>&#160;        wcscpy( lpszName, L<span class="stringliteral">&quot;00000409&quot;</span> );</div>
<div class="line"><a name="l03298"></a><span class="lineno"> 3298</span>&#160;        NtClose( hKey );</div>
<div class="line"><a name="l03299"></a><span class="lineno"> 3299</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03300"></a><span class="lineno"> 3300</span>&#160;    }</div>
<div class="line"><a name="l03301"></a><span class="lineno"> 3301</span>&#160; </div>
<div class="line"><a name="l03302"></a><span class="lineno"> 3302</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03303"></a><span class="lineno"> 3303</span>&#160;<span class="comment">     * We have the Active value.  Now create the Preload key.</span></div>
<div class="line"><a name="l03304"></a><span class="lineno"> 3304</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03305"></a><span class="lineno"> 3305</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, L<span class="stringliteral">&quot;Preload&quot;</span> );</div>
<div class="line"><a name="l03306"></a><span class="lineno"> 3306</span>&#160;    InitializeObjectAttributes( &amp;ObjA,</div>
<div class="line"><a name="l03307"></a><span class="lineno"> 3307</span>&#160;                                &amp;UnicodeString,</div>
<div class="line"><a name="l03308"></a><span class="lineno"> 3308</span>&#160;                                OBJ_CASE_INSENSITIVE,</div>
<div class="line"><a name="l03309"></a><span class="lineno"> 3309</span>&#160;                                hKey,</div>
<div class="line"><a name="l03310"></a><span class="lineno"> 3310</span>&#160;                                NULL );</div>
<div class="line"><a name="l03311"></a><span class="lineno"> 3311</span>&#160;    rc = NtCreateKey( &amp;hKeyPreload,</div>
<div class="line"><a name="l03312"></a><span class="lineno"> 3312</span>&#160;                      STANDARD_RIGHTS_WRITE |</div>
<div class="line"><a name="l03313"></a><span class="lineno"> 3313</span>&#160;                        KEY_QUERY_VALUE |</div>
<div class="line"><a name="l03314"></a><span class="lineno"> 3314</span>&#160;                        KEY_ENUMERATE_SUB_KEYS |</div>
<div class="line"><a name="l03315"></a><span class="lineno"> 3315</span>&#160;                        KEY_SET_VALUE |</div>
<div class="line"><a name="l03316"></a><span class="lineno"> 3316</span>&#160;                        KEY_CREATE_SUB_KEY,</div>
<div class="line"><a name="l03317"></a><span class="lineno"> 3317</span>&#160;                      &amp;ObjA,</div>
<div class="line"><a name="l03318"></a><span class="lineno"> 3318</span>&#160;                      0,</div>
<div class="line"><a name="l03319"></a><span class="lineno"> 3319</span>&#160;                      NULL,</div>
<div class="line"><a name="l03320"></a><span class="lineno"> 3320</span>&#160;                      0,</div>
<div class="line"><a name="l03321"></a><span class="lineno"> 3321</span>&#160;                      &amp;CreateDisposition );</div>
<div class="line"><a name="l03322"></a><span class="lineno"> 3322</span>&#160; </div>
<div class="line"><a name="l03323"></a><span class="lineno"> 3323</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03324"></a><span class="lineno"> 3324</span>&#160;    {</div>
<div class="line"><a name="l03325"></a><span class="lineno"> 3325</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could NOT create Preload key (%lx).\n&quot;</span>, rc );</div>
<div class="line"><a name="l03326"></a><span class="lineno"> 3326</span>&#160;        NtClose( hKey );</div>
<div class="line"><a name="l03327"></a><span class="lineno"> 3327</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03328"></a><span class="lineno"> 3328</span>&#160;    }</div>
<div class="line"><a name="l03329"></a><span class="lineno"> 3329</span>&#160; </div>
<div class="line"><a name="l03330"></a><span class="lineno"> 3330</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03331"></a><span class="lineno"> 3331</span>&#160;<span class="comment">     * Set the new value entry.</span></div>
<div class="line"><a name="l03332"></a><span class="lineno"> 3332</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03333"></a><span class="lineno"> 3333</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, L<span class="stringliteral">&quot;1&quot;</span> );</div>
<div class="line"><a name="l03334"></a><span class="lineno"> 3334</span>&#160;    rc = NtSetValueKey( hKeyPreload,</div>
<div class="line"><a name="l03335"></a><span class="lineno"> 3335</span>&#160;                        &amp;UnicodeString,</div>
<div class="line"><a name="l03336"></a><span class="lineno"> 3336</span>&#160;                        0,</div>
<div class="line"><a name="l03337"></a><span class="lineno"> 3337</span>&#160;                        REG_SZ,</div>
<div class="line"><a name="l03338"></a><span class="lineno"> 3338</span>&#160;                        lpszName,</div>
<div class="line"><a name="l03339"></a><span class="lineno"> 3339</span>&#160;                        (wcslen(lpszName)+1) * <span class="keyword">sizeof</span>(WCHAR)</div>
<div class="line"><a name="l03340"></a><span class="lineno"> 3340</span>&#160;                      );</div>
<div class="line"><a name="l03341"></a><span class="lineno"> 3341</span>&#160; </div>
<div class="line"><a name="l03342"></a><span class="lineno"> 3342</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03343"></a><span class="lineno"> 3343</span>&#160;    {</div>
<div class="line"><a name="l03344"></a><span class="lineno"> 3344</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could NOT create value entry 1 for Preload key (%lx).\n&quot;</span>, rc );</div>
<div class="line"><a name="l03345"></a><span class="lineno"> 3345</span>&#160;        NtClose( hKey );</div>
<div class="line"><a name="l03346"></a><span class="lineno"> 3346</span>&#160;        NtClose( hKeyPreload );</div>
<div class="line"><a name="l03347"></a><span class="lineno"> 3347</span>&#160;        <span class="keywordflow">return</span>;</div>
<div class="line"><a name="l03348"></a><span class="lineno"> 3348</span>&#160;    }</div>
<div class="line"><a name="l03349"></a><span class="lineno"> 3349</span>&#160; </div>
<div class="line"><a name="l03350"></a><span class="lineno"> 3350</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03351"></a><span class="lineno"> 3351</span>&#160;<span class="comment">     * Success: attempt to delete the Active value key.</span></div>
<div class="line"><a name="l03352"></a><span class="lineno"> 3352</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03353"></a><span class="lineno"> 3353</span>&#160;    RtlInitUnicodeString( &amp;UnicodeString, szKbdActive );</div>
<div class="line"><a name="l03354"></a><span class="lineno"> 3354</span>&#160;    rc = NtDeleteValueKey( hKey, &amp;UnicodeString );</div>
<div class="line"><a name="l03355"></a><span class="lineno"> 3355</span>&#160; </div>
<div class="line"><a name="l03356"></a><span class="lineno"> 3356</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS( rc ))</div>
<div class="line"><a name="l03357"></a><span class="lineno"> 3357</span>&#160;    {</div>
<div class="line"><a name="l03358"></a><span class="lineno"> 3358</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>( <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetActiveKeyboardName - Could NOT delete value key &#39;Active&#39;.\n&quot;</span>, rc );</div>
<div class="line"><a name="l03359"></a><span class="lineno"> 3359</span>&#160;    }</div>
<div class="line"><a name="l03360"></a><span class="lineno"> 3360</span>&#160;    NtClose( hKey );</div>
<div class="line"><a name="l03361"></a><span class="lineno"> 3361</span>&#160;    NtClose( hKeyPreload );</div>
<div class="line"><a name="l03362"></a><span class="lineno"> 3362</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00131">RIPMSG0</a>, <a class="el" href="a00371_source.html#l00132">RIPMSG1</a> , 以及 <a class="el" href="a03650_source.html#l00146">wcsncpycch()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l01787">CommonCreateWindowStation()</a> , 以及 <a class="el" href="a03611_source.html#l00065">UpdatePerUserSystemParameters()</a>.</p>

</div>
</div>
<a id="a7f200b0221109fec737f647797c02e26"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f200b0221109fec737f647797c02e26">&#9670;&nbsp;</a></span>GetClipboardCodePage()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> GetClipboardCodePage </td>
          <td>(</td>
          <td class="paramtype">LCID&#160;</td>
          <td class="paramname"><em>uLocale</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LCTYPE&#160;</td>
          <td class="paramname"><em>uLocaleType</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00672">672</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00675"></a><span class="lineno">  675</span>&#160;{</div>
<div class="line"><a name="l00676"></a><span class="lineno">  676</span>&#160;    WCHAR wszCodePage[<a class="code" href="a00026.html#afb6cef9b9912c174a04f435c3d289591">GETCCP_SIZE</a>];</div>
<div class="line"><a name="l00677"></a><span class="lineno">  677</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> uCPage;</div>
<div class="line"><a name="l00678"></a><span class="lineno">  678</span>&#160; </div>
<div class="line"><a name="l00679"></a><span class="lineno">  679</span>&#160;    <span class="keywordflow">if</span> (GetLocaleInfoW(uLocale, uLocaleType, wszCodePage, <a class="code" href="a00026.html#afb6cef9b9912c174a04f435c3d289591">GETCCP_SIZE</a>)) {</div>
<div class="line"><a name="l00680"></a><span class="lineno">  680</span>&#160; </div>
<div class="line"><a name="l00681"></a><span class="lineno">  681</span>&#160;        uCPage = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)wcstol(wszCodePage, NULL, 10);</div>
<div class="line"><a name="l00682"></a><span class="lineno">  682</span>&#160; </div>
<div class="line"><a name="l00683"></a><span class="lineno">  683</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00684"></a><span class="lineno">  684</span>&#160; </div>
<div class="line"><a name="l00685"></a><span class="lineno">  685</span>&#160;        <span class="keywordflow">switch</span>(uLocaleType) {</div>
<div class="line"><a name="l00686"></a><span class="lineno">  686</span>&#160; </div>
<div class="line"><a name="l00687"></a><span class="lineno">  687</span>&#160;        <span class="keywordflow">case</span> LOCALE_IDEFAULTCODEPAGE:</div>
<div class="line"><a name="l00688"></a><span class="lineno">  688</span>&#160;            uCPage = CP_OEMCP;</div>
<div class="line"><a name="l00689"></a><span class="lineno">  689</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00690"></a><span class="lineno">  690</span>&#160; </div>
<div class="line"><a name="l00691"></a><span class="lineno">  691</span>&#160;        <span class="keywordflow">case</span> LOCALE_IDEFAULTANSICODEPAGE:</div>
<div class="line"><a name="l00692"></a><span class="lineno">  692</span>&#160;            uCPage = CP_ACP;</div>
<div class="line"><a name="l00693"></a><span class="lineno">  693</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00694"></a><span class="lineno">  694</span>&#160; </div>
<div class="line"><a name="l00695"></a><span class="lineno">  695</span>&#160;        <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00696"></a><span class="lineno">  696</span>&#160;            uCPage = CP_MACCP;</div>
<div class="line"><a name="l00697"></a><span class="lineno">  697</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00698"></a><span class="lineno">  698</span>&#160;        }</div>
<div class="line"><a name="l00699"></a><span class="lineno">  699</span>&#160;    }</div>
<div class="line"><a name="l00700"></a><span class="lineno">  700</span>&#160; </div>
<div class="line"><a name="l00701"></a><span class="lineno">  701</span>&#160;    <span class="keywordflow">return</span> uCPage;</div>
<div class="line"><a name="l00702"></a><span class="lineno">  702</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00026_source.html#l00670">GETCCP_SIZE</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l00323">GetClipboardData()</a>.</p>

</div>
</div>
<a id="a92c7de5d770222c5cbf2d979150635e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a92c7de5d770222c5cbf2d979150635e5">&#9670;&nbsp;</a></span>GetClipboardData()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE WINAPI GetClipboardData </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>uFmt</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00323">323</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00325"></a><span class="lineno">  325</span>&#160;{</div>
<div class="line"><a name="l00326"></a><span class="lineno">  326</span>&#160;    HANDLE       handleClient;</div>
<div class="line"><a name="l00327"></a><span class="lineno">  327</span>&#160;    HANDLE       handleServer;</div>
<div class="line"><a name="l00328"></a><span class="lineno">  328</span>&#160;    <a class="code" href="a01793.html">PHANDLENODE</a>  phn;</div>
<div class="line"><a name="l00329"></a><span class="lineno">  329</span>&#160;    <a class="code" href="a01793.html">PHANDLENODE</a>  phnNew;</div>
<div class="line"><a name="l00330"></a><span class="lineno">  330</span>&#160;    <a class="code" href="a02529.html">GETCLIPBDATA</a> gcd;</div>
<div class="line"><a name="l00331"></a><span class="lineno">  331</span>&#160; </div>
<div class="line"><a name="l00332"></a><span class="lineno">  332</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00333"></a><span class="lineno">  333</span>&#160;<span class="comment">     * Get the Server&#39;s Data; return if there is no data.</span></div>
<div class="line"><a name="l00334"></a><span class="lineno">  334</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00335"></a><span class="lineno">  335</span>&#160;    <span class="keywordflow">if</span> (!(handleServer = <a class="code" href="a00362.html#a49c8a03b7207f4e1558285a15ae931ce">NtUserGetClipboardData</a>(uFmt, &amp;gcd)))</div>
<div class="line"><a name="l00336"></a><span class="lineno">  336</span>&#160;        <span class="keywordflow">return</span> (HANDLE)NULL;</div>
<div class="line"><a name="l00337"></a><span class="lineno">  337</span>&#160; </div>
<div class="line"><a name="l00338"></a><span class="lineno">  338</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00339"></a><span class="lineno">  339</span>&#160;<span class="comment">     * Handle any translation that must be done for text items.  The</span></div>
<div class="line"><a name="l00340"></a><span class="lineno">  340</span>&#160;<span class="comment">     * format returned will only differ for text items.  Metafile and</span></div>
<div class="line"><a name="l00341"></a><span class="lineno">  341</span>&#160;<span class="comment">     * Enhanced-Metafiles are handled through GDI for their converstions.</span></div>
<div class="line"><a name="l00342"></a><span class="lineno">  342</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00343"></a><span class="lineno">  343</span>&#160;    <span class="keywordflow">if</span> (uFmt != gcd.<a class="code" href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">uFmtRet</a>) {</div>
<div class="line"><a name="l00344"></a><span class="lineno">  344</span>&#160; </div>
<div class="line"><a name="l00345"></a><span class="lineno">  345</span>&#160;        LPBYTE       lpSrceData;</div>
<div class="line"><a name="l00346"></a><span class="lineno">  346</span>&#160;        LPBYTE       lpDestData;</div>
<div class="line"><a name="l00347"></a><span class="lineno">  347</span>&#160;        LPDWORD      lpLocale;</div>
<div class="line"><a name="l00348"></a><span class="lineno">  348</span>&#160;        <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>        uLocale;</div>
<div class="line"><a name="l00349"></a><span class="lineno">  349</span>&#160;        <span class="keywordtype">int</span>          iSrce;</div>
<div class="line"><a name="l00350"></a><span class="lineno">  350</span>&#160;        <span class="keywordtype">int</span>          iDest;</div>
<div class="line"><a name="l00351"></a><span class="lineno">  351</span>&#160;        <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>         uCPage;</div>
<div class="line"><a name="l00352"></a><span class="lineno">  352</span>&#160;        <a class="code" href="a02533.html">SETCLIPBDATA</a> scd;</div>
<div class="line"><a name="l00353"></a><span class="lineno">  353</span>&#160;        <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>         cbNULL = 0;</div>
<div class="line"><a name="l00354"></a><span class="lineno">  354</span>&#160; </div>
<div class="line"><a name="l00355"></a><span class="lineno">  355</span>&#160;        lpSrceData = <a class="code" href="a03611.html#aab0cc30f737042cd8237de7cddea6557">CreateLocalMemHandle</a>(handleServer);</div>
<div class="line"><a name="l00356"></a><span class="lineno">  356</span>&#160; </div>
<div class="line"><a name="l00357"></a><span class="lineno">  357</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00358"></a><span class="lineno">  358</span>&#160;<span class="comment">         * Allocate space for the converted TEXT data.</span></div>
<div class="line"><a name="l00359"></a><span class="lineno">  359</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00360"></a><span class="lineno">  360</span>&#160;        <span class="keywordflow">if</span> (!(iSrce = GlobalSize(lpSrceData)))</div>
<div class="line"><a name="l00361"></a><span class="lineno">  361</span>&#160;            <span class="keywordflow">goto</span> AbortDummyHandle;</div>
<div class="line"><a name="l00362"></a><span class="lineno">  362</span>&#160; </div>
<div class="line"><a name="l00363"></a><span class="lineno">  363</span>&#160;        <span class="keywordflow">if</span> ((lpDestData = GlobalAlloc(LPTR, iSrce)) == NULL) {</div>
<div class="line"><a name="l00364"></a><span class="lineno">  364</span>&#160;            <span class="keywordflow">goto</span> AbortDummyHandle;</div>
<div class="line"><a name="l00365"></a><span class="lineno">  365</span>&#160;        }</div>
<div class="line"><a name="l00366"></a><span class="lineno">  366</span>&#160; </div>
<div class="line"><a name="l00367"></a><span class="lineno">  367</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00368"></a><span class="lineno">  368</span>&#160;<span class="comment">         * Get the locale out of the parameter-struct.  We will</span></div>
<div class="line"><a name="l00369"></a><span class="lineno">  369</span>&#160;<span class="comment">         * use this to get the codepage for text-translation.</span></div>
<div class="line"><a name="l00370"></a><span class="lineno">  370</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00371"></a><span class="lineno">  371</span>&#160;        <span class="keywordflow">if</span> (lpLocale = (LPDWORD)<a class="code" href="a03611.html#aab0cc30f737042cd8237de7cddea6557">CreateLocalMemHandle</a>(gcd.<a class="code" href="a02529.html#a13a9a2379d37bf649a413fc8dd1b199c">hLocale</a>)) {</div>
<div class="line"><a name="l00372"></a><span class="lineno">  372</span>&#160; </div>
<div class="line"><a name="l00373"></a><span class="lineno">  373</span>&#160;            uLocale = *lpLocale;</div>
<div class="line"><a name="l00374"></a><span class="lineno">  374</span>&#160;            GlobalFree(lpLocale);</div>
<div class="line"><a name="l00375"></a><span class="lineno">  375</span>&#160; </div>
<div class="line"><a name="l00376"></a><span class="lineno">  376</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00377"></a><span class="lineno">  377</span>&#160;            uLocale = 0;</div>
<div class="line"><a name="l00378"></a><span class="lineno">  378</span>&#160;        }</div>
<div class="line"><a name="l00379"></a><span class="lineno">  379</span>&#160; </div>
<div class="line"><a name="l00380"></a><span class="lineno">  380</span>&#160;        <span class="keywordflow">switch</span> (uFmt) {</div>
<div class="line"><a name="l00381"></a><span class="lineno">  381</span>&#160;        <span class="keywordflow">case</span> CF_TEXT:</div>
<div class="line"><a name="l00382"></a><span class="lineno">  382</span>&#160;            cbNULL = 1;</div>
<div class="line"><a name="l00383"></a><span class="lineno">  383</span>&#160;            <span class="keywordflow">if</span> (gcd.<a class="code" href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">uFmtRet</a> == CF_OEMTEXT) {</div>
<div class="line"><a name="l00384"></a><span class="lineno">  384</span>&#160; </div>
<div class="line"><a name="l00385"></a><span class="lineno">  385</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00386"></a><span class="lineno">  386</span>&#160;<span class="comment">                 * CF_OEMTEXT --&gt; CF_TEXT conversion</span></div>
<div class="line"><a name="l00387"></a><span class="lineno">  387</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00388"></a><span class="lineno">  388</span>&#160;                OemToAnsi((LPSTR)lpSrceData, (LPSTR)lpDestData);</div>
<div class="line"><a name="l00389"></a><span class="lineno">  389</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00390"></a><span class="lineno">  390</span>&#160; </div>
<div class="line"><a name="l00391"></a><span class="lineno">  391</span>&#160;                uCPage = <a class="code" href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a>(uLocale,</div>
<div class="line"><a name="l00392"></a><span class="lineno">  392</span>&#160;                                              LOCALE_IDEFAULTANSICODEPAGE);</div>
<div class="line"><a name="l00393"></a><span class="lineno">  393</span>&#160; </div>
<div class="line"><a name="l00394"></a><span class="lineno">  394</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00395"></a><span class="lineno">  395</span>&#160;<span class="comment">                 * CF_UNICODETEXT --&gt; CF_TEXT conversion</span></div>
<div class="line"><a name="l00396"></a><span class="lineno">  396</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00397"></a><span class="lineno">  397</span>&#160;                iDest = 0;</div>
<div class="line"><a name="l00398"></a><span class="lineno">  398</span>&#160;                <span class="keywordflow">if</span> ((iDest = <a class="code" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a>(uCPage,</div>
<div class="line"><a name="l00399"></a><span class="lineno">  399</span>&#160;                                                 (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)0,</div>
<div class="line"><a name="l00400"></a><span class="lineno">  400</span>&#160;                                                 (LPWSTR)lpSrceData,</div>
<div class="line"><a name="l00401"></a><span class="lineno">  401</span>&#160;                                                 (<span class="keywordtype">int</span>)(iSrce / <span class="keyword">sizeof</span>(WCHAR)),</div>
<div class="line"><a name="l00402"></a><span class="lineno">  402</span>&#160;                                                 (LPSTR)NULL,</div>
<div class="line"><a name="l00403"></a><span class="lineno">  403</span>&#160;                                                 (<span class="keywordtype">int</span>)iDest,</div>
<div class="line"><a name="l00404"></a><span class="lineno">  404</span>&#160;                                                 (LPSTR)NULL,</div>
<div class="line"><a name="l00405"></a><span class="lineno">  405</span>&#160;                                                 (LPBOOL)NULL)) == 0) {</div>
<div class="line"><a name="l00406"></a><span class="lineno">  406</span>&#160;AbortGetClipData:</div>
<div class="line"><a name="l00407"></a><span class="lineno">  407</span>&#160;                    UserGlobalFree(lpDestData);</div>
<div class="line"><a name="l00408"></a><span class="lineno">  408</span>&#160;AbortDummyHandle:</div>
<div class="line"><a name="l00409"></a><span class="lineno">  409</span>&#160;                    UserGlobalFree(lpSrceData);</div>
<div class="line"><a name="l00410"></a><span class="lineno">  410</span>&#160;                    <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00411"></a><span class="lineno">  411</span>&#160;                }</div>
<div class="line"><a name="l00412"></a><span class="lineno">  412</span>&#160; </div>
<div class="line"><a name="l00413"></a><span class="lineno">  413</span>&#160;                <span class="keywordflow">if</span> (!(lpDestData = GlobalReAlloc( lpDestData, iDest, LPTR | LMEM_MOVEABLE)))</div>
<div class="line"><a name="l00414"></a><span class="lineno">  414</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00415"></a><span class="lineno">  415</span>&#160; </div>
<div class="line"><a name="l00416"></a><span class="lineno">  416</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a>(uCPage,</div>
<div class="line"><a name="l00417"></a><span class="lineno">  417</span>&#160;                                        (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)0,</div>
<div class="line"><a name="l00418"></a><span class="lineno">  418</span>&#160;                                        (LPWSTR)lpSrceData,</div>
<div class="line"><a name="l00419"></a><span class="lineno">  419</span>&#160;                                        (<span class="keywordtype">int</span>)(iSrce / <span class="keyword">sizeof</span>(WCHAR)),</div>
<div class="line"><a name="l00420"></a><span class="lineno">  420</span>&#160;                                        (LPSTR)lpDestData,</div>
<div class="line"><a name="l00421"></a><span class="lineno">  421</span>&#160;                                        (<span class="keywordtype">int</span>)iDest,</div>
<div class="line"><a name="l00422"></a><span class="lineno">  422</span>&#160;                                        (LPSTR)NULL,</div>
<div class="line"><a name="l00423"></a><span class="lineno">  423</span>&#160;                                        (LPBOOL)NULL) == 0)</div>
<div class="line"><a name="l00424"></a><span class="lineno">  424</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00425"></a><span class="lineno">  425</span>&#160;            }</div>
<div class="line"><a name="l00426"></a><span class="lineno">  426</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00427"></a><span class="lineno">  427</span>&#160; </div>
<div class="line"><a name="l00428"></a><span class="lineno">  428</span>&#160;        <span class="keywordflow">case</span> CF_OEMTEXT:</div>
<div class="line"><a name="l00429"></a><span class="lineno">  429</span>&#160;            cbNULL = 1;</div>
<div class="line"><a name="l00430"></a><span class="lineno">  430</span>&#160;            <span class="keywordflow">if</span> (gcd.<a class="code" href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">uFmtRet</a> == CF_TEXT) {</div>
<div class="line"><a name="l00431"></a><span class="lineno">  431</span>&#160; </div>
<div class="line"><a name="l00432"></a><span class="lineno">  432</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00433"></a><span class="lineno">  433</span>&#160;<span class="comment">                 * CF_TEXT --&gt; CF_OEMTEXT conversion</span></div>
<div class="line"><a name="l00434"></a><span class="lineno">  434</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00435"></a><span class="lineno">  435</span>&#160;                AnsiToOem((LPSTR)lpSrceData, (LPSTR)lpDestData);</div>
<div class="line"><a name="l00436"></a><span class="lineno">  436</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00437"></a><span class="lineno">  437</span>&#160; </div>
<div class="line"><a name="l00438"></a><span class="lineno">  438</span>&#160;                uCPage = <a class="code" href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a>(uLocale,</div>
<div class="line"><a name="l00439"></a><span class="lineno">  439</span>&#160;                                              LOCALE_IDEFAULTCODEPAGE);</div>
<div class="line"><a name="l00440"></a><span class="lineno">  440</span>&#160; </div>
<div class="line"><a name="l00441"></a><span class="lineno">  441</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00442"></a><span class="lineno">  442</span>&#160;<span class="comment">                 * CF_UNICODETEXT --&gt; CF_OEMTEXT conversion</span></div>
<div class="line"><a name="l00443"></a><span class="lineno">  443</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00444"></a><span class="lineno">  444</span>&#160;                iDest = 0;</div>
<div class="line"><a name="l00445"></a><span class="lineno">  445</span>&#160;                <span class="keywordflow">if</span> ((iDest = <a class="code" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a>(uCPage,</div>
<div class="line"><a name="l00446"></a><span class="lineno">  446</span>&#160;                                                 (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)0,</div>
<div class="line"><a name="l00447"></a><span class="lineno">  447</span>&#160;                                                 (LPWSTR)lpSrceData,</div>
<div class="line"><a name="l00448"></a><span class="lineno">  448</span>&#160;                                                 (<span class="keywordtype">int</span>)(iSrce / <span class="keyword">sizeof</span>(WCHAR)),</div>
<div class="line"><a name="l00449"></a><span class="lineno">  449</span>&#160;                                                 (LPSTR)NULL,</div>
<div class="line"><a name="l00450"></a><span class="lineno">  450</span>&#160;                                                 (<span class="keywordtype">int</span>)iDest,</div>
<div class="line"><a name="l00451"></a><span class="lineno">  451</span>&#160;                                                 (LPSTR)NULL,</div>
<div class="line"><a name="l00452"></a><span class="lineno">  452</span>&#160;                                                 (LPBOOL)NULL)) == 0)</div>
<div class="line"><a name="l00453"></a><span class="lineno">  453</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00454"></a><span class="lineno">  454</span>&#160; </div>
<div class="line"><a name="l00455"></a><span class="lineno">  455</span>&#160;                <span class="keywordflow">if</span> (!(lpDestData = GlobalReAlloc( lpDestData, iDest, LPTR | LMEM_MOVEABLE)))</div>
<div class="line"><a name="l00456"></a><span class="lineno">  456</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00457"></a><span class="lineno">  457</span>&#160; </div>
<div class="line"><a name="l00458"></a><span class="lineno">  458</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a>(uCPage,</div>
<div class="line"><a name="l00459"></a><span class="lineno">  459</span>&#160;                                        (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)0,</div>
<div class="line"><a name="l00460"></a><span class="lineno">  460</span>&#160;                                        (LPWSTR)lpSrceData,</div>
<div class="line"><a name="l00461"></a><span class="lineno">  461</span>&#160;                                        (<span class="keywordtype">int</span>)(iSrce / <span class="keyword">sizeof</span>(WCHAR)),</div>
<div class="line"><a name="l00462"></a><span class="lineno">  462</span>&#160;                                        (LPSTR)lpDestData,</div>
<div class="line"><a name="l00463"></a><span class="lineno">  463</span>&#160;                                        (<span class="keywordtype">int</span>)iDest,</div>
<div class="line"><a name="l00464"></a><span class="lineno">  464</span>&#160;                                        (LPSTR)NULL,</div>
<div class="line"><a name="l00465"></a><span class="lineno">  465</span>&#160;                                        (LPBOOL)NULL) == 0)</div>
<div class="line"><a name="l00466"></a><span class="lineno">  466</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00467"></a><span class="lineno">  467</span>&#160;            }</div>
<div class="line"><a name="l00468"></a><span class="lineno">  468</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00469"></a><span class="lineno">  469</span>&#160; </div>
<div class="line"><a name="l00470"></a><span class="lineno">  470</span>&#160;        <span class="keywordflow">case</span> CF_UNICODETEXT:</div>
<div class="line"><a name="l00471"></a><span class="lineno">  471</span>&#160;            cbNULL = 2;</div>
<div class="line"><a name="l00472"></a><span class="lineno">  472</span>&#160;            <span class="keywordflow">if</span> (gcd.<a class="code" href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">uFmtRet</a> == CF_TEXT) {</div>
<div class="line"><a name="l00473"></a><span class="lineno">  473</span>&#160; </div>
<div class="line"><a name="l00474"></a><span class="lineno">  474</span>&#160;                uCPage = <a class="code" href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a>(uLocale,</div>
<div class="line"><a name="l00475"></a><span class="lineno">  475</span>&#160;                                              LOCALE_IDEFAULTANSICODEPAGE);</div>
<div class="line"><a name="l00476"></a><span class="lineno">  476</span>&#160; </div>
<div class="line"><a name="l00477"></a><span class="lineno">  477</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00478"></a><span class="lineno">  478</span>&#160;<span class="comment">                 * CF_TEXT --&gt; CF_UNICODETEXT conversion</span></div>
<div class="line"><a name="l00479"></a><span class="lineno">  479</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00480"></a><span class="lineno">  480</span>&#160;                iDest = 0;</div>
<div class="line"><a name="l00481"></a><span class="lineno">  481</span>&#160;                <span class="keywordflow">if</span> ((iDest = <a class="code" href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar</a>(uCPage,</div>
<div class="line"><a name="l00482"></a><span class="lineno">  482</span>&#160;                                                 (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)MB_PRECOMPOSED,</div>
<div class="line"><a name="l00483"></a><span class="lineno">  483</span>&#160;                                                 (LPSTR)lpSrceData,</div>
<div class="line"><a name="l00484"></a><span class="lineno">  484</span>&#160;                                                 (<span class="keywordtype">int</span>)iSrce,</div>
<div class="line"><a name="l00485"></a><span class="lineno">  485</span>&#160;                                                 (LPWSTR)NULL,</div>
<div class="line"><a name="l00486"></a><span class="lineno">  486</span>&#160;                                                 (<span class="keywordtype">int</span>)iDest)) == 0)</div>
<div class="line"><a name="l00487"></a><span class="lineno">  487</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00488"></a><span class="lineno">  488</span>&#160; </div>
<div class="line"><a name="l00489"></a><span class="lineno">  489</span>&#160;                <span class="keywordflow">if</span> (!(lpDestData = GlobalReAlloc(lpDestData,</div>
<div class="line"><a name="l00490"></a><span class="lineno">  490</span>&#160;                        iDest * <span class="keyword">sizeof</span>(WCHAR), LPTR | LMEM_MOVEABLE)))</div>
<div class="line"><a name="l00491"></a><span class="lineno">  491</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00492"></a><span class="lineno">  492</span>&#160; </div>
<div class="line"><a name="l00493"></a><span class="lineno">  493</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar</a>(uCPage,</div>
<div class="line"><a name="l00494"></a><span class="lineno">  494</span>&#160;                                        (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)MB_PRECOMPOSED,</div>
<div class="line"><a name="l00495"></a><span class="lineno">  495</span>&#160;                                        (LPSTR)lpSrceData,</div>
<div class="line"><a name="l00496"></a><span class="lineno">  496</span>&#160;                                        (<span class="keywordtype">int</span>)iSrce,</div>
<div class="line"><a name="l00497"></a><span class="lineno">  497</span>&#160;                                        (LPWSTR)lpDestData,</div>
<div class="line"><a name="l00498"></a><span class="lineno">  498</span>&#160;                                        (<span class="keywordtype">int</span>)iDest) == 0)</div>
<div class="line"><a name="l00499"></a><span class="lineno">  499</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00500"></a><span class="lineno">  500</span>&#160; </div>
<div class="line"><a name="l00501"></a><span class="lineno">  501</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00502"></a><span class="lineno">  502</span>&#160; </div>
<div class="line"><a name="l00503"></a><span class="lineno">  503</span>&#160;                uCPage = <a class="code" href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a>(uLocale,</div>
<div class="line"><a name="l00504"></a><span class="lineno">  504</span>&#160;                                              LOCALE_IDEFAULTCODEPAGE);</div>
<div class="line"><a name="l00505"></a><span class="lineno">  505</span>&#160; </div>
<div class="line"><a name="l00506"></a><span class="lineno">  506</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00507"></a><span class="lineno">  507</span>&#160;<span class="comment">                 * CF_OEMTEXT --&gt; CF_UNICDOETEXT conversion</span></div>
<div class="line"><a name="l00508"></a><span class="lineno">  508</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00509"></a><span class="lineno">  509</span>&#160;                iDest = 0;</div>
<div class="line"><a name="l00510"></a><span class="lineno">  510</span>&#160;                <span class="keywordflow">if</span> ((iDest = <a class="code" href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar</a>(uCPage,</div>
<div class="line"><a name="l00511"></a><span class="lineno">  511</span>&#160;                                                 (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)MB_PRECOMPOSED,</div>
<div class="line"><a name="l00512"></a><span class="lineno">  512</span>&#160;                                                 (LPSTR)lpSrceData,</div>
<div class="line"><a name="l00513"></a><span class="lineno">  513</span>&#160;                                                 (<span class="keywordtype">int</span>)iSrce,</div>
<div class="line"><a name="l00514"></a><span class="lineno">  514</span>&#160;                                                 (LPWSTR)NULL,</div>
<div class="line"><a name="l00515"></a><span class="lineno">  515</span>&#160;                                                 (<span class="keywordtype">int</span>)iDest)) == 0)</div>
<div class="line"><a name="l00516"></a><span class="lineno">  516</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00517"></a><span class="lineno">  517</span>&#160; </div>
<div class="line"><a name="l00518"></a><span class="lineno">  518</span>&#160;                <span class="keywordflow">if</span> (!(lpDestData = GlobalReAlloc(lpDestData,</div>
<div class="line"><a name="l00519"></a><span class="lineno">  519</span>&#160;                        iDest * <span class="keyword">sizeof</span>(WCHAR), LPTR | LMEM_MOVEABLE)))</div>
<div class="line"><a name="l00520"></a><span class="lineno">  520</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00521"></a><span class="lineno">  521</span>&#160; </div>
<div class="line"><a name="l00522"></a><span class="lineno">  522</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar</a>(uCPage,</div>
<div class="line"><a name="l00523"></a><span class="lineno">  523</span>&#160;                                        (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)MB_PRECOMPOSED,</div>
<div class="line"><a name="l00524"></a><span class="lineno">  524</span>&#160;                                        (LPSTR)lpSrceData,</div>
<div class="line"><a name="l00525"></a><span class="lineno">  525</span>&#160;                                        (<span class="keywordtype">int</span>)iSrce,</div>
<div class="line"><a name="l00526"></a><span class="lineno">  526</span>&#160;                                        (LPWSTR)lpDestData,</div>
<div class="line"><a name="l00527"></a><span class="lineno">  527</span>&#160;                                        (<span class="keywordtype">int</span>)iDest) == 0)</div>
<div class="line"><a name="l00528"></a><span class="lineno">  528</span>&#160;                    <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00529"></a><span class="lineno">  529</span>&#160;            }</div>
<div class="line"><a name="l00530"></a><span class="lineno">  530</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00531"></a><span class="lineno">  531</span>&#160;        }</div>
<div class="line"><a name="l00532"></a><span class="lineno">  532</span>&#160; </div>
<div class="line"><a name="l00533"></a><span class="lineno">  533</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00534"></a><span class="lineno">  534</span>&#160;<span class="comment">         * Replace the dummy text handle with the actual handle.</span></div>
<div class="line"><a name="l00535"></a><span class="lineno">  535</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00536"></a><span class="lineno">  536</span>&#160;        handleServer = <a class="code" href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a>(lpDestData, cbNULL);</div>
<div class="line"><a name="l00537"></a><span class="lineno">  537</span>&#160;        <span class="keywordflow">if</span> (handleServer == NULL)</div>
<div class="line"><a name="l00538"></a><span class="lineno">  538</span>&#160;            <span class="keywordflow">goto</span> AbortGetClipData;</div>
<div class="line"><a name="l00539"></a><span class="lineno">  539</span>&#160; </div>
<div class="line"><a name="l00540"></a><span class="lineno">  540</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00541"></a><span class="lineno">  541</span>&#160;<span class="comment">         * Update the server.  If that is successfull update the client</span></div>
<div class="line"><a name="l00542"></a><span class="lineno">  542</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00543"></a><span class="lineno">  543</span>&#160;        RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00544"></a><span class="lineno">  544</span>&#160;        scd.<a class="code" href="a02533.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a>    = gcd.<a class="code" href="a02529.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a>;</div>
<div class="line"><a name="l00545"></a><span class="lineno">  545</span>&#160;        scd.<a class="code" href="a02533.html#a1245271e4507fcd19b5fa4a4c000bd3a">fIncSerialNumber</a> = FALSE;</div>
<div class="line"><a name="l00546"></a><span class="lineno">  546</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="a00362.html#ac6f3110cb4f124f07183cd4d9b763119">NtUserSetClipboardData</a>(uFmt, handleServer, &amp;scd)) {</div>
<div class="line"><a name="l00547"></a><span class="lineno">  547</span>&#160;            handleServer = NULL;</div>
<div class="line"><a name="l00548"></a><span class="lineno">  548</span>&#160;        }</div>
<div class="line"><a name="l00549"></a><span class="lineno">  549</span>&#160;        RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00550"></a><span class="lineno">  550</span>&#160;        UserGlobalFree(lpDestData);</div>
<div class="line"><a name="l00551"></a><span class="lineno">  551</span>&#160;        UserGlobalFree(lpSrceData);</div>
<div class="line"><a name="l00552"></a><span class="lineno">  552</span>&#160; </div>
<div class="line"><a name="l00553"></a><span class="lineno">  553</span>&#160;        <span class="keywordflow">if</span> (handleServer == NULL)</div>
<div class="line"><a name="l00554"></a><span class="lineno">  554</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00555"></a><span class="lineno">  555</span>&#160;    }</div>
<div class="line"><a name="l00556"></a><span class="lineno">  556</span>&#160; </div>
<div class="line"><a name="l00557"></a><span class="lineno">  557</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00558"></a><span class="lineno">  558</span>&#160;<span class="comment">     * See if we already have a client side handle; validate the format</span></div>
<div class="line"><a name="l00559"></a><span class="lineno">  559</span>&#160;<span class="comment">     * as well because some server objects, metafile for example, are dual mode</span></div>
<div class="line"><a name="l00560"></a><span class="lineno">  560</span>&#160;<span class="comment">     * and yield two kinds of client objects enhanced and regular metafiles</span></div>
<div class="line"><a name="l00561"></a><span class="lineno">  561</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00562"></a><span class="lineno">  562</span>&#160;    handleClient = NULL;</div>
<div class="line"><a name="l00563"></a><span class="lineno">  563</span>&#160;    RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00564"></a><span class="lineno">  564</span>&#160; </div>
<div class="line"><a name="l00565"></a><span class="lineno">  565</span>&#160;    phn = <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a>;</div>
<div class="line"><a name="l00566"></a><span class="lineno">  566</span>&#160;    <span class="keywordflow">while</span> (phn) {</div>
<div class="line"><a name="l00567"></a><span class="lineno">  567</span>&#160;        <span class="keywordflow">if</span> ((phn-&gt;<a class="code" href="a01793.html#a64a5e949b57cf19f94cb99705571cb4f">handleServer</a> == handleServer) &amp;&amp; (phn-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a> == uFmt)) {</div>
<div class="line"><a name="l00568"></a><span class="lineno">  568</span>&#160;            handleClient = phn-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a>;</div>
<div class="line"><a name="l00569"></a><span class="lineno">  569</span>&#160;            <span class="keywordflow">goto</span> Exit;</div>
<div class="line"><a name="l00570"></a><span class="lineno">  570</span>&#160;        }</div>
<div class="line"><a name="l00571"></a><span class="lineno">  571</span>&#160;        phn = phn-&gt;<a class="code" href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">pnext</a>;</div>
<div class="line"><a name="l00572"></a><span class="lineno">  572</span>&#160;    }</div>
<div class="line"><a name="l00573"></a><span class="lineno">  573</span>&#160; </div>
<div class="line"><a name="l00574"></a><span class="lineno">  574</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00575"></a><span class="lineno">  575</span>&#160;<span class="comment">     * We don&#39;t have a handle cached so we&#39;ll create one</span></div>
<div class="line"><a name="l00576"></a><span class="lineno">  576</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00577"></a><span class="lineno">  577</span>&#160;    phnNew = (<a class="code" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a>)LocalAlloc(LPTR, <span class="keyword">sizeof</span>(<a class="code" href="a01793.html">HANDLENODE</a>));</div>
<div class="line"><a name="l00578"></a><span class="lineno">  578</span>&#160;    <span class="keywordflow">if</span> (phnNew == NULL)</div>
<div class="line"><a name="l00579"></a><span class="lineno">  579</span>&#160;        <span class="keywordflow">goto</span> Exit;</div>
<div class="line"><a name="l00580"></a><span class="lineno">  580</span>&#160; </div>
<div class="line"><a name="l00581"></a><span class="lineno">  581</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#a64a5e949b57cf19f94cb99705571cb4f">handleServer</a>  = handleServer;</div>
<div class="line"><a name="l00582"></a><span class="lineno">  582</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a>           = gcd.<a class="code" href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">uFmtRet</a>;</div>
<div class="line"><a name="l00583"></a><span class="lineno">  583</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a> = gcd.<a class="code" href="a02529.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a>;</div>
<div class="line"><a name="l00584"></a><span class="lineno">  584</span>&#160; </div>
<div class="line"><a name="l00585"></a><span class="lineno">  585</span>&#160;    <span class="keywordflow">switch</span> (uFmt) {</div>
<div class="line"><a name="l00586"></a><span class="lineno">  586</span>&#160; </div>
<div class="line"><a name="l00587"></a><span class="lineno">  587</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00588"></a><span class="lineno">  588</span>&#160;<span class="comment">         * Misc GDI Handles</span></div>
<div class="line"><a name="l00589"></a><span class="lineno">  589</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00590"></a><span class="lineno">  590</span>&#160;        <span class="keywordflow">case</span> CF_BITMAP:</div>
<div class="line"><a name="l00591"></a><span class="lineno">  591</span>&#160;        <span class="keywordflow">case</span> CF_DSPBITMAP:</div>
<div class="line"><a name="l00592"></a><span class="lineno">  592</span>&#160;        <span class="keywordflow">case</span> CF_PALETTE:</div>
<div class="line"><a name="l00593"></a><span class="lineno">  593</span>&#160;            FIXUP_HANDLE(handleServer);</div>
<div class="line"><a name="l00594"></a><span class="lineno">  594</span>&#160;            phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = handleServer;</div>
<div class="line"><a name="l00595"></a><span class="lineno">  595</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00596"></a><span class="lineno">  596</span>&#160; </div>
<div class="line"><a name="l00597"></a><span class="lineno">  597</span>&#160; </div>
<div class="line"><a name="l00598"></a><span class="lineno">  598</span>&#160;        <span class="keywordflow">case</span> CF_METAFILEPICT:</div>
<div class="line"><a name="l00599"></a><span class="lineno">  599</span>&#160;        <span class="keywordflow">case</span> CF_DSPMETAFILEPICT:</div>
<div class="line"><a name="l00600"></a><span class="lineno">  600</span>&#160;            phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = GdiCreateLocalMetaFilePict(handleServer);</div>
<div class="line"><a name="l00601"></a><span class="lineno">  601</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00602"></a><span class="lineno">  602</span>&#160; </div>
<div class="line"><a name="l00603"></a><span class="lineno">  603</span>&#160;        <span class="keywordflow">case</span> CF_ENHMETAFILE:</div>
<div class="line"><a name="l00604"></a><span class="lineno">  604</span>&#160;        <span class="keywordflow">case</span> CF_DSPENHMETAFILE:</div>
<div class="line"><a name="l00605"></a><span class="lineno">  605</span>&#160;            phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = GdiCreateLocalEnhMetaFile(handleServer);</div>
<div class="line"><a name="l00606"></a><span class="lineno">  606</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00607"></a><span class="lineno">  607</span>&#160; </div>
<div class="line"><a name="l00608"></a><span class="lineno">  608</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00609"></a><span class="lineno">  609</span>&#160;<span class="comment">         * GlobalHandle Cases</span></div>
<div class="line"><a name="l00610"></a><span class="lineno">  610</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00611"></a><span class="lineno">  611</span>&#160;        <span class="keywordflow">case</span> CF_TEXT:</div>
<div class="line"><a name="l00612"></a><span class="lineno">  612</span>&#160;        <span class="keywordflow">case</span> CF_OEMTEXT:</div>
<div class="line"><a name="l00613"></a><span class="lineno">  613</span>&#160;        <span class="keywordflow">case</span> CF_UNICODETEXT:</div>
<div class="line"><a name="l00614"></a><span class="lineno">  614</span>&#160;        <span class="keywordflow">case</span> CF_LOCALE:</div>
<div class="line"><a name="l00615"></a><span class="lineno">  615</span>&#160;        <span class="keywordflow">case</span> CF_DSPTEXT:</div>
<div class="line"><a name="l00616"></a><span class="lineno">  616</span>&#160;        <span class="keywordflow">case</span> CF_DIB:</div>
<div class="line"><a name="l00617"></a><span class="lineno">  617</span>&#160;            phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = <a class="code" href="a03611.html#aab0cc30f737042cd8237de7cddea6557">CreateLocalMemHandle</a>(handleServer);</div>
<div class="line"><a name="l00618"></a><span class="lineno">  618</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00619"></a><span class="lineno">  619</span>&#160; </div>
<div class="line"><a name="l00620"></a><span class="lineno">  620</span>&#160;        <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00621"></a><span class="lineno">  621</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l00622"></a><span class="lineno">  622</span>&#160;<span class="comment">             * Private Data Format; If this is global data, create a copy of that</span></div>
<div class="line"><a name="l00623"></a><span class="lineno">  623</span>&#160;<span class="comment">             * data here on the client. If it isn&#39;t global data, it is just a dword</span></div>
<div class="line"><a name="l00624"></a><span class="lineno">  624</span>&#160;<span class="comment">             * in which case we just return a dword. If it is global data and</span></div>
<div class="line"><a name="l00625"></a><span class="lineno">  625</span>&#160;<span class="comment">             * the server fails to give us that memory, return NULL. If it isn&#39;t</span></div>
<div class="line"><a name="l00626"></a><span class="lineno">  626</span>&#160;<span class="comment">             * global data, handleClient is just a dword.</span></div>
<div class="line"><a name="l00627"></a><span class="lineno">  627</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l00628"></a><span class="lineno">  628</span>&#160;            <span class="keywordflow">if</span> (phnNew-&gt;<a class="code" href="a01793.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a>) {</div>
<div class="line"><a name="l00629"></a><span class="lineno">  629</span>&#160;                phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = <a class="code" href="a03611.html#aab0cc30f737042cd8237de7cddea6557">CreateLocalMemHandle</a>(handleServer);</div>
<div class="line"><a name="l00630"></a><span class="lineno">  630</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00631"></a><span class="lineno">  631</span>&#160;                phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> = handleServer;</div>
<div class="line"><a name="l00632"></a><span class="lineno">  632</span>&#160;            }</div>
<div class="line"><a name="l00633"></a><span class="lineno">  633</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00634"></a><span class="lineno">  634</span>&#160;    }</div>
<div class="line"><a name="l00635"></a><span class="lineno">  635</span>&#160; </div>
<div class="line"><a name="l00636"></a><span class="lineno">  636</span>&#160;    <span class="keywordflow">if</span> (phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> == NULL) {</div>
<div class="line"><a name="l00637"></a><span class="lineno">  637</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00638"></a><span class="lineno">  638</span>&#160;<span class="comment">         * Something bad happened, gdi didn&#39;t give us back a</span></div>
<div class="line"><a name="l00639"></a><span class="lineno">  639</span>&#160;<span class="comment">         * handle. Since gdi has logged the error, we&#39;ll just</span></div>
<div class="line"><a name="l00640"></a><span class="lineno">  640</span>&#160;<span class="comment">         * clean up and return an error.</span></div>
<div class="line"><a name="l00641"></a><span class="lineno">  641</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00642"></a><span class="lineno">  642</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div>
<div class="line"><a name="l00643"></a><span class="lineno">  643</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;GetClipboardData unable to convert server handle 0x%lX to client handle\n&quot;</span>, handleServer);</div>
<div class="line"><a name="l00644"></a><span class="lineno">  644</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l00645"></a><span class="lineno">  645</span>&#160;        LocalFree(phnNew);</div>
<div class="line"><a name="l00646"></a><span class="lineno">  646</span>&#160;        <span class="keywordflow">goto</span> Exit;</div>
<div class="line"><a name="l00647"></a><span class="lineno">  647</span>&#160;    }</div>
<div class="line"><a name="l00648"></a><span class="lineno">  648</span>&#160; </div>
<div class="line"><a name="l00649"></a><span class="lineno">  649</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00650"></a><span class="lineno">  650</span>&#160;<span class="comment">     * Cache the new handle by linking it into our list</span></div>
<div class="line"><a name="l00651"></a><span class="lineno">  651</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00652"></a><span class="lineno">  652</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">pnext</a> = <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a>;</div>
<div class="line"><a name="l00653"></a><span class="lineno">  653</span>&#160;    <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a> = phnNew;</div>
<div class="line"><a name="l00654"></a><span class="lineno">  654</span>&#160; </div>
<div class="line"><a name="l00655"></a><span class="lineno">  655</span>&#160;    handleClient = phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a>;</div>
<div class="line"><a name="l00656"></a><span class="lineno">  656</span>&#160; </div>
<div class="line"><a name="l00657"></a><span class="lineno">  657</span>&#160;Exit:</div>
<div class="line"><a name="l00658"></a><span class="lineno">  658</span>&#160;    RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00659"></a><span class="lineno">  659</span>&#160;    <span class="keywordflow">return</span> handleClient;</div>
<div class="line"><a name="l00660"></a><span class="lineno">  660</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l00219">ConvertMemHandle()</a>, <a class="el" href="a03611_source.html#l00260">CreateLocalMemHandle()</a>, <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00026_source.html#l00210">_HANDLENODE::fGlobalHandle</a>, <a class="el" href="a00365_source.html#l01106">tagGETCLIPBDATA::fGlobalHandle</a>, <a class="el" href="a00365_source.html#l01117">tagSETCLIPBDATA::fGlobalHandle</a>, <a class="el" href="a00365_source.html#l01118">tagSETCLIPBDATA::fIncSerialNumber</a>, <a class="el" href="a00026_source.html#l00207">_HANDLENODE::fmt</a>, <a class="el" href="a00020_source.html#l00097">gcsClipboard</a>, <a class="el" href="a00026_source.html#l00672">GetClipboardCodePage()</a>, <a class="el" href="a00026_source.html#l00214">gphn</a>, <a class="el" href="a00026_source.html#l00209">_HANDLENODE::handleClient</a>, <a class="el" href="a00026_source.html#l00208">_HANDLENODE::handleServer</a>, <a class="el" href="a00365_source.html#l01107">tagGETCLIPBDATA::hLocale</a>, <a class="el" href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar()</a>, <a class="el" href="a03614_source.html#l02812">NtUserGetClipboardData()</a>, <a class="el" href="a03614_source.html#l02452">NtUserSetClipboardData()</a>, <a class="el" href="a00026_source.html#l00206">_HANDLENODE::pnext</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00132">RIPMSG1</a>, <a class="el" href="a00365_source.html#l01105">tagGETCLIPBDATA::uFmtRet</a>, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a> , 以及 <a class="el" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00128_source.html#l02337">MLPasteText()</a>, <a class="el" href="a00953_source.html#l00167">ProfClipboardGroup()</a> , 以及 <a class="el" href="a00131_source.html#l00933">SLPasteText()</a>.</p>

</div>
</div>
<a id="aca82c10708133cfb8aea7bfebf06c9eb"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aca82c10708133cfb8aea7bfebf06c9eb">&#9670;&nbsp;</a></span>GetDCEx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDC WINAPI GetDCEx </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hrgnClip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01258">1258</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01262"></a><span class="lineno"> 1262</span>&#160;{</div>
<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span>&#160;    FIXUP_HANDLEZ(hrgnClip);</div>
<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a6c484222639935903202a121ed6db9a2">NtUserGetDCEx</a>(</div>
<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span>&#160;            hwnd,</div>
<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span>&#160;            hrgnClip,</div>
<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span>&#160;            flags);</div>
<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l05264">NtUserGetDCEx()</a>.</p>

</div>
</div>
<a id="ac111102a51dd610a87b3844828b68781"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ac111102a51dd610a87b3844828b68781">&#9670;&nbsp;</a></span>GetDialogBaseUnits()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">long GetDialogBaseUnits </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02622">2622</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02623"></a><span class="lineno"> 2623</span>&#160;{</div>
<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span>&#160;    <span class="keywordflow">return</span> MAKELONG(<a class="code" href="a00020.html#ad760da1dd81d9e84dee607d18edfde39">gpsi</a>-&gt;<a class="code" href="a02513.html#a4bd4bf0c7aa2d88610b01f436ec2e82d">cxSysFontChar</a>, <a class="code" href="a00020.html#ad760da1dd81d9e84dee607d18edfde39">gpsi</a>-&gt;<a class="code" href="a02513.html#a481a03e7eb24994f1eca28391f9b7c77">cySysFontChar</a>);</div>
<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l01013">tagSERVERINFO::cxSysFontChar</a>, <a class="el" href="a00365_source.html#l01014">tagSERVERINFO::cySysFontChar</a> , 以及 <a class="el" href="a00020_source.html#l00039">gpsi</a>.</p>

</div>
</div>
<a id="a533305c1632500cf84e422c082a05a75"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a533305c1632500cf84e422c082a05a75">&#9670;&nbsp;</a></span>GetEditDS()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE GetEditDS </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02345">2345</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02346"></a><span class="lineno"> 2346</span>&#160;{</div>
<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(<a class="code" href="a00020.html#a13a3ee7c55bf8c846ebd91449034b143">pfn16GlobalAlloc</a> != NULL);</div>
<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span>&#160; </div>
<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span>&#160;    <span class="keywordflow">return</span>((HANDLE)((*<a class="code" href="a00020.html#a13a3ee7c55bf8c846ebd91449034b143">pfn16GlobalAlloc</a>)(GHND | GMEM_SHARE, 256)));</div>
<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00020_source.html#l00136">pfn16GlobalAlloc</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00095_source.html#l00176">InternalCreateDialog()</a>.</p>

</div>
</div>
<a id="aa9ce9abee64d83ba417fcae251e0301d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa9ce9abee64d83ba417fcae251e0301d">&#9670;&nbsp;</a></span>GetFullUserHandle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> GetFullUserHandle </td>
          <td>(</td>
          <td class="paramtype">WORD&#160;</td>
          <td class="paramname"><em>wHandle</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00155_source.html">handles.c</a> 第 <a class="el" href="a00155_source.html#l00293">293</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00294"></a><span class="lineno">  294</span>&#160;{</div>
<div class="line"><a name="l00295"></a><span class="lineno">  295</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwHandle;</div>
<div class="line"><a name="l00296"></a><span class="lineno">  296</span>&#160;    <a class="code" href="a02553.html">PHE</a> phe;</div>
<div class="line"><a name="l00297"></a><span class="lineno">  297</span>&#160; </div>
<div class="line"><a name="l00298"></a><span class="lineno">  298</span>&#160;    dwHandle = HMIndexFromHandle(wHandle);</div>
<div class="line"><a name="l00299"></a><span class="lineno">  299</span>&#160; </div>
<div class="line"><a name="l00300"></a><span class="lineno">  300</span>&#160;    <span class="keywordflow">if</span> (dwHandle &lt; gpsi-&gt;cHandleEntries) {</div>
<div class="line"><a name="l00301"></a><span class="lineno">  301</span>&#160; </div>
<div class="line"><a name="l00302"></a><span class="lineno">  302</span>&#160;        phe = &amp;<a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#aba571224616f70b9a072015bc9873676">aheList</a>[dwHandle];</div>
<div class="line"><a name="l00303"></a><span class="lineno">  303</span>&#160; </div>
<div class="line"><a name="l00304"></a><span class="lineno">  304</span>&#160;        <span class="keywordflow">if</span> (phe-&gt;<a class="code" href="a02553.html#ab51f0b363324b2cf09057a4c55d5100f">bType</a> == TYPE_WINDOW)</div>
<div class="line"><a name="l00305"></a><span class="lineno">  305</span>&#160;            <span class="keywordflow">return</span>(MAKELONG(dwHandle, phe-&gt;<a class="code" href="a02553.html#a933e5c6adafeaf9086a99630bf9ccd5e">wUniq</a>));</div>
<div class="line"><a name="l00306"></a><span class="lineno">  306</span>&#160;    }</div>
<div class="line"><a name="l00307"></a><span class="lineno">  307</span>&#160; </div>
<div class="line"><a name="l00308"></a><span class="lineno">  308</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00309"></a><span class="lineno">  309</span>&#160;<span class="comment">     * object may be gone, but we must pass something.</span></div>
<div class="line"><a name="l00310"></a><span class="lineno">  310</span>&#160;<span class="comment">     * DDE terminates will fail if we don&#39;t map this right even after</span></div>
<div class="line"><a name="l00311"></a><span class="lineno">  311</span>&#160;<span class="comment">     * the window is dead!</span></div>
<div class="line"><a name="l00312"></a><span class="lineno">  312</span>&#160;<span class="comment">     *</span></div>
<div class="line"><a name="l00313"></a><span class="lineno">  313</span>&#160;<span class="comment">     * NOTE: This fix will only work for WOW apps, but since the 32bit</span></div>
<div class="line"><a name="l00314"></a><span class="lineno">  314</span>&#160;<span class="comment">     * tracking layer locks dde windows until the last terminate is</span></div>
<div class="line"><a name="l00315"></a><span class="lineno">  315</span>&#160;<span class="comment">     * received, we won&#39;t see this problem on the 32bit side.</span></div>
<div class="line"><a name="l00316"></a><span class="lineno">  316</span>&#160;<span class="comment">     *</span></div>
<div class="line"><a name="l00317"></a><span class="lineno">  317</span>&#160;<span class="comment">     * BUG: We WILL see a problem for OLE32 thunked DDE though.</span></div>
<div class="line"><a name="l00318"></a><span class="lineno">  318</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00319"></a><span class="lineno">  319</span>&#160;    <span class="keywordflow">return</span>(wHandle);</div>
<div class="line"><a name="l00320"></a><span class="lineno">  320</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l01060">tagSHAREDINFO::aheList</a>, <a class="el" href="a00365_source.html#l01168">_HANDLEENTRY::bType</a>, <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00020_source.html#l00040">gSharedInfo</a> , 以及 <a class="el" href="a00365_source.html#l01170">_HANDLEENTRY::wUniq</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="af2642c18b5eec2a9c0cb78c01cc2ca0d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af2642c18b5eec2a9c0cb78c01cc2ca0d">&#9670;&nbsp;</a></span>GetInputDesktop()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK GetInputDesktop </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02633">2633</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02634"></a><span class="lineno"> 2634</span>&#160;{</div>
<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span>&#160;    <span class="keywordflow">return</span> (HDESK)<a class="code" href="a00362.html#ab64eb963b74811908a5b9bc99d77b8ac">NtUserCallNoParam</a>(<a class="code" href="a00335.html#a4d7dd9f86c5a4b717e6085c060058b86">SFI_XXXGETINPUTDESKTOP</a>);</div>
<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03204">NtUserCallNoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00010">SFI_XXXGETINPUTDESKTOP</a>.</p>

</div>
</div>
<a id="a46278f8b1db32b9b4679eee6abc9e1b4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a46278f8b1db32b9b4679eee6abc9e1b4">&#9670;&nbsp;</a></span>GetKeyboardLayout()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HKL GetKeyboardLayout </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>idThread</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03732">3732</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03734"></a><span class="lineno"> 3734</span>&#160;{</div>
<div class="line"><a name="l03735"></a><span class="lineno"> 3735</span>&#160;    <span class="keywordflow">return</span> (HKL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(idThread, <a class="code" href="a00335.html#a5786001e4f28fce7e9b70e197cfcb5a0">SFI__GETKEYBOARDLAYOUT</a>);</div>
<div class="line"><a name="l03736"></a><span class="lineno"> 3736</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00011">SFI__GETKEYBOARDLAYOUT</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00122_source.html#l00285">ECCreate()</a>, <a class="el" href="a00311_source.html#l00553">GetThreadKeyboardLayoutCP()</a>, <a class="el" href="a00290_source.html#l00591">HotKeyIDDispatcher()</a>, <a class="el" href="a00167_source.html#l00271">ImeSystemHandler()</a>, <a class="el" href="a00167_source.html#l00216">ImeWndCreateHandler()</a>, <a class="el" href="a00296_source.html#l00316">ImmActivateLayout()</a>, <a class="el" href="a00278_source.html#l00027">ImmCreateDefaultContext()</a>, <a class="el" href="a00323_source.html#l00107">ImmCreateSoftKeyboard()</a>, <a class="el" href="a00278_source.html#l00092">ImmDestroyContext()</a>, <a class="el" href="a00311_source.html#l00243">ImmLockIMC()</a>, <a class="el" href="a00296_source.html#l00929">ImmNotifyIME()</a>, <a class="el" href="a00278_source.html#l00255">ImmSetActiveContext()</a>, <a class="el" href="a00281_source.html#l00547">ImmSetCompositionStringWorker()</a>, <a class="el" href="a00290_source.html#l00360">ImmSimulateHotKey()</a>, <a class="el" href="a03287_source.html#l00086">ImmTranslateMessage()</a> , 以及 <a class="el" href="a00281_source.html#l02918">MakeIMENotify()</a>.</p>

</div>
</div>
<a id="abda4e18bc1d4bbbe57358e8e3e63f48c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abda4e18bc1d4bbbe57358e8e3e63f48c">&#9670;&nbsp;</a></span>GetKeyboardType()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int GetKeyboardType </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nTypeFlags</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02644">2644</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02646"></a><span class="lineno"> 2646</span>&#160;{</div>
<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span>&#160;    <span class="keywordflow">return</span> (<span class="keywordtype">int</span>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(nTypeFlags, <a class="code" href="a00335.html#ae824c5e4480ee6702983324ef6281b9e">SFI__GETKEYBOARDTYPE</a>);</div>
<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00012">SFI__GETKEYBOARDTYPE</a>.</p>

</div>
</div>
<a id="af41f6eb420ba7bc6a4a862c8980b9f4c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af41f6eb420ba7bc6a4a862c8980b9f4c">&#9670;&nbsp;</a></span>GetMessagePos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> GetMessagePos </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02656">2656</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02657"></a><span class="lineno"> 2657</span>&#160;{</div>
<div class="line"><a name="l02658"></a><span class="lineno"> 2658</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)<a class="code" href="a00362.html#ab64eb963b74811908a5b9bc99d77b8ac">NtUserCallNoParam</a>(<a class="code" href="a00335.html#ad978c3d488a9be1c39bf73dea6315a51">SFI__GETMESSAGEPOS</a>);</div>
<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03204">NtUserCallNoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00013">SFI__GETMESSAGEPOS</a>.</p>

</div>
</div>
<a id="a24f4202e6f8bdebfa4ae2eb9c48753db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a24f4202e6f8bdebfa4ae2eb9c48753db">&#9670;&nbsp;</a></span>GetProgmanWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWND GetProgmanWindow </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02759">2759</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02759"></a><span class="lineno"> 2759</span>&#160;                            {</div>
<div class="line"><a name="l02760"></a><span class="lineno"> 2760</span>&#160;    <a class="code" href="a02477.html">PCLIENTINFO</a> pci;</div>
<div class="line"><a name="l02761"></a><span class="lineno"> 2761</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l02762"></a><span class="lineno"> 2762</span>&#160; </div>
<div class="line"><a name="l02763"></a><span class="lineno"> 2763</span>&#160;    ConnectIfNecessary();</div>
<div class="line"><a name="l02764"></a><span class="lineno"> 2764</span>&#160; </div>
<div class="line"><a name="l02765"></a><span class="lineno"> 2765</span>&#160;    pci = GetClientInfo();</div>
<div class="line"><a name="l02766"></a><span class="lineno"> 2766</span>&#160;    pwnd = pci-&gt;<a class="code" href="a02477.html#a76d4881aa4c15330103e83a80e6b5dc7">pDeskInfo</a>-&gt;<a class="code" href="a02609.html#a009dc3c70977b9fd09afe23eb4232f76">spwndProgman</a>;</div>
<div class="line"><a name="l02767"></a><span class="lineno"> 2767</span>&#160;    <span class="keywordflow">if</span> (pwnd != NULL) {</div>
<div class="line"><a name="l02768"></a><span class="lineno"> 2768</span>&#160;        pwnd = (<a class="code" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>)((PBYTE)pwnd - pci-&gt;<a class="code" href="a02477.html#acbf48a5d29178c49f4dd41065b66ed17">ulClientDelta</a>);</div>
<div class="line"><a name="l02769"></a><span class="lineno"> 2769</span>&#160;        <span class="keywordflow">return</span> HWq(pwnd);</div>
<div class="line"><a name="l02770"></a><span class="lineno"> 2770</span>&#160;    }</div>
<div class="line"><a name="l02771"></a><span class="lineno"> 2771</span>&#160;    <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02772"></a><span class="lineno"> 2772</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l00379">_CLIENTINFO::pDeskInfo</a>, <a class="el" href="a00365_source.html#l01610">tagDESKTOPINFO::spwndProgman</a> , 以及 <a class="el" href="a00365_source.html#l00380">_CLIENTINFO::ulClientDelta</a>.</p>

</div>
</div>
<a id="a742b2c488929da67cd43d26f26f85e20"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a742b2c488929da67cd43d26f26f85e20">&#9670;&nbsp;</a></span>GetQueueStatus()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> GetQueueStatus </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>flags</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02667">2667</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02669"></a><span class="lineno"> 2669</span>&#160;{</div>
<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span>&#160;    <span class="keywordflow">if</span> (flags &amp; ~QS_VALID) {</div>
<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span>&#160;        <a class="code" href="a00371.html#a4d87cc74e563dca72daafec9588cffa0">RIPERR2</a>(ERROR_INVALID_FLAGS, <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;Invalid flags %x &amp; ~%x != 0&quot;</span>,</div>
<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span>&#160;              flags, QS_VALID);</div>
<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span>&#160;        <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span>&#160;    }</div>
<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span>&#160; </div>
<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(flags, <a class="code" href="a00335.html#acbb39a6ebed65bc751d431ab823ad8ef">SFI__GETQUEUESTATUS</a>);</div>
<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00121">RIPERR2</a> , 以及 <a class="el" href="a00335_source.html#l00014">SFI__GETQUEUESTATUS</a>.</p>

</div>
</div>
<a id="a65206c1977c14a1a73ecfa42f53bbda7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65206c1977c14a1a73ecfa42f53bbda7">&#9670;&nbsp;</a></span>GetShellWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWND GetShellWindow </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02740">2740</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02740"></a><span class="lineno"> 2740</span>&#160;                          {</div>
<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span>&#160;    <a class="code" href="a02477.html">PCLIENTINFO</a> pci;</div>
<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span>&#160; </div>
<div class="line"><a name="l02744"></a><span class="lineno"> 2744</span>&#160;    ConnectIfNecessary();</div>
<div class="line"><a name="l02745"></a><span class="lineno"> 2745</span>&#160; </div>
<div class="line"><a name="l02746"></a><span class="lineno"> 2746</span>&#160;    pci = GetClientInfo();</div>
<div class="line"><a name="l02747"></a><span class="lineno"> 2747</span>&#160;    pwnd = pci-&gt;<a class="code" href="a02477.html#a76d4881aa4c15330103e83a80e6b5dc7">pDeskInfo</a>-&gt;<a class="code" href="a02609.html#ae973a44948baa25dc8763905ddfa0b98">spwndShell</a>;</div>
<div class="line"><a name="l02748"></a><span class="lineno"> 2748</span>&#160;    <span class="keywordflow">if</span> (pwnd != NULL) {</div>
<div class="line"><a name="l02749"></a><span class="lineno"> 2749</span>&#160;        pwnd = (<a class="code" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>)((PBYTE)pwnd - pci-&gt;<a class="code" href="a02477.html#acbf48a5d29178c49f4dd41065b66ed17">ulClientDelta</a>);</div>
<div class="line"><a name="l02750"></a><span class="lineno"> 2750</span>&#160;        <span class="keywordflow">return</span> HWq(pwnd);</div>
<div class="line"><a name="l02751"></a><span class="lineno"> 2751</span>&#160;    }</div>
<div class="line"><a name="l02752"></a><span class="lineno"> 2752</span>&#160;    <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02753"></a><span class="lineno"> 2753</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l00379">_CLIENTINFO::pDeskInfo</a>, <a class="el" href="a00365_source.html#l01606">tagDESKTOPINFO::spwndShell</a> , 以及 <a class="el" href="a00365_source.html#l00380">_CLIENTINFO::ulClientDelta</a>.</p>

</div>
</div>
<a id="a0a21f5246590c851a748e8aa6aed6cb9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0a21f5246590c851a748e8aa6aed6cb9">&#9670;&nbsp;</a></span>GetTaskmanWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWND GetTaskmanWindow </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02780">2780</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02780"></a><span class="lineno"> 2780</span>&#160;                            {</div>
<div class="line"><a name="l02781"></a><span class="lineno"> 2781</span>&#160;    <a class="code" href="a02477.html">PCLIENTINFO</a> pci;</div>
<div class="line"><a name="l02782"></a><span class="lineno"> 2782</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l02783"></a><span class="lineno"> 2783</span>&#160; </div>
<div class="line"><a name="l02784"></a><span class="lineno"> 2784</span>&#160;    ConnectIfNecessary();</div>
<div class="line"><a name="l02785"></a><span class="lineno"> 2785</span>&#160; </div>
<div class="line"><a name="l02786"></a><span class="lineno"> 2786</span>&#160;    pci = GetClientInfo();</div>
<div class="line"><a name="l02787"></a><span class="lineno"> 2787</span>&#160;    pwnd = pci-&gt;<a class="code" href="a02477.html#a76d4881aa4c15330103e83a80e6b5dc7">pDeskInfo</a>-&gt;<a class="code" href="a02609.html#afd6d95bc90bb896f09f7bbf1cc658577">spwndTaskman</a>;</div>
<div class="line"><a name="l02788"></a><span class="lineno"> 2788</span>&#160;    <span class="keywordflow">if</span> (pwnd != NULL) {</div>
<div class="line"><a name="l02789"></a><span class="lineno"> 2789</span>&#160;        pwnd = (<a class="code" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>)((PBYTE)pwnd - pci-&gt;<a class="code" href="a02477.html#acbf48a5d29178c49f4dd41065b66ed17">ulClientDelta</a>);</div>
<div class="line"><a name="l02790"></a><span class="lineno"> 2790</span>&#160;        <span class="keywordflow">return</span> HWq(pwnd);</div>
<div class="line"><a name="l02791"></a><span class="lineno"> 2791</span>&#160;    }</div>
<div class="line"><a name="l02792"></a><span class="lineno"> 2792</span>&#160;    <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02793"></a><span class="lineno"> 2793</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l00379">_CLIENTINFO::pDeskInfo</a>, <a class="el" href="a00365_source.html#l01609">tagDESKTOPINFO::spwndTaskman</a> , 以及 <a class="el" href="a00365_source.html#l00380">_CLIENTINFO::ulClientDelta</a>.</p>

</div>
</div>
<a id="a241ecf6da64b39f0d713f93ac33a6186"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a241ecf6da64b39f0d713f93ac33a6186">&#9670;&nbsp;</a></span>GetUpdateRgn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI GetUpdateRgn </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hWnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hRgn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bErase</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01229">1229</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01230"></a><span class="lineno"> 1230</span>&#160;{</div>
<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span>&#160; </div>
<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span>&#160;    FIXUP_HANDLE(hRgn);</div>
<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span>&#160;    <span class="keywordflow">if</span> (hRgn == NULL) {</div>
<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span>&#160;        <a class="code" href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a>(ERROR_INVALID_HANDLE, <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;Invalid region %#lx&quot;</span>, hRgn);</div>
<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span>&#160;    }</div>
<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span>&#160; </div>
<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span>&#160;    <span class="keywordflow">if</span> ((pwnd = <a class="code" href="a00293.html#a41d387d1b2d42169cbaa2092c8a02abf">ValidateHwnd</a>(hWnd)) == NULL) {</div>
<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span>&#160;    }</div>
<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span>&#160; </div>
<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span>&#160;<span class="comment">     * Check for the simple case where nothing needs to be done.</span></div>
<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span>&#160;    <span class="keywordflow">if</span> (pwnd-&gt;<a class="code" href="a02581.html#a79d8579e0cf1a8fb985bc709e08f61ac">hrgnUpdate</a> == NULL &amp;&amp;</div>
<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span>&#160;            !TestWF(pwnd, WFSENDERASEBKGND) &amp;&amp;</div>
<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span>&#160;            !TestWF(pwnd, WFSENDNCPAINT) &amp;&amp;</div>
<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span>&#160;            !TestWF(pwnd, WFUPDATEDIRTY) &amp;&amp;</div>
<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span>&#160;            !TestWF(pwnd, WFPAINTNOTPROCESSED)) {</div>
<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span>&#160;        SetRectRgn(hRgn, 0, 0, 0, 0);</div>
<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span>&#160;        <span class="keywordflow">return</span> NULLREGION;</div>
<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span>&#160;    }</div>
<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span>&#160; </div>
<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a04729cf183b6f13db368ace3d85f2939">NtUserGetUpdateRgn</a>(hWnd, hRgn, bErase);</div>
<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l01406">tagWND::hrgnUpdate</a>, <a class="el" href="a03614_source.html#l05299">NtUserGetUpdateRgn()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00120">RIPERR1</a> , 以及 <a class="el" href="a00293_source.html#l00090">ValidateHwnd</a>.</p>

</div>
</div>
<a id="a958833fa2704c99de02a921c738a72ce"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a958833fa2704c99de02a921c738a72ce">&#9670;&nbsp;</a></span>GetUserObjectInformationA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL GetUserObjectInformationA </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hObject</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nIndex</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PVOID&#160;</td>
          <td class="paramname"><em>pvInfo</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>nLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDWORD&#160;</td>
          <td class="paramname"><em>pnLengthNeeded</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01750">1750</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01756"></a><span class="lineno"> 1756</span>&#160;{</div>
<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span>&#160;    PVOID pvInfoW;</div>
<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> nLengthW;</div>
<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span>&#160;    BOOL fSuccess;</div>
<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span>&#160; </div>
<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span>&#160;    <span class="keywordflow">if</span> (nIndex == UOI_NAME || nIndex == UOI_TYPE) {</div>
<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span>&#160;        nLengthW = nLength * <span class="keyword">sizeof</span>(WCHAR);</div>
<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span>&#160;        pvInfoW = LocalAlloc(LPTR, nLengthW);</div>
<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span>&#160;        fSuccess = <a class="code" href="a00362.html#a8df26676457554e62cdb7b55d5cb2c46">NtUserGetObjectInformation</a>(hObject, nIndex, pvInfoW,</div>
<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span>&#160;                nLengthW, pnLengthNeeded);</div>
<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span>&#160;        <span class="keywordflow">if</span> (fSuccess) {</div>
<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span>&#160;            <span class="keywordflow">if</span> (pnLengthNeeded != NULL)</div>
<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span>&#160;                 *pnLengthNeeded /= <span class="keyword">sizeof</span>(WCHAR);</div>
<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span>&#160;            WCSToMB(pvInfoW, -1, &amp;(PCHAR)pvInfo, nLength, FALSE);</div>
<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span>&#160;        }</div>
<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span>&#160;        LocalFree(pvInfoW);</div>
<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span>&#160;        <span class="keywordflow">return</span> fSuccess;</div>
<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="a00362.html#a8df26676457554e62cdb7b55d5cb2c46">NtUserGetObjectInformation</a>(hObject, nIndex, pvInfo,</div>
<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span>&#160;                nLength, pnLengthNeeded);</div>
<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span>&#160;    }</div>
<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a> , 以及 <a class="el" href="a00362.html#a8df26676457554e62cdb7b55d5cb2c46">NtUserGetObjectInformation()</a>.</p>

</div>
</div>
<a id="a256c67e34cd5746c21213c7d1a6a5a58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a256c67e34cd5746c21213c7d1a6a5a58">&#9670;&nbsp;</a></span>GetUserObjectSecurity()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL GetUserObjectSecurity </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hObject</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_INFORMATION&#160;</td>
          <td class="paramname"><em>pRequestedInformation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_DESCRIPTOR&#160;</td>
          <td class="paramname"><em>pSecurityDescriptor</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>nLength</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDWORD&#160;</td>
          <td class="paramname"><em>lpnLengthRequired</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01693">1693</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01699"></a><span class="lineno"> 1699</span>&#160;{</div>
<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span>&#160; </div>
<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span>&#160;    Status = NtQuerySecurityObject(hObject,</div>
<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span>&#160;                                   *pRequestedInformation,</div>
<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span>&#160;                                   pSecurityDescriptor,</div>
<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span>&#160;                                   nLength,</div>
<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span>&#160;                                   lpnLengthRequired);</div>
<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span>&#160;        <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span>&#160;    }</div>
<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span>&#160;    <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a> , 以及 <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a>.</p>

</div>
</div>
<a id="a1b0939a76b92454b09e3cdbc60b275d9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1b0939a76b92454b09e3cdbc60b275d9">&#9670;&nbsp;</a></span>GetWindowContextHelpId()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> GetWindowContextHelpId </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02820">2820</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02822"></a><span class="lineno"> 2822</span>&#160;{</div>
<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a8f3ab19504904b931b9511a403b28f3a">NtUserCallHwnd</a>(hwnd, <a class="code" href="a00335.html#a6b2bb4ca810c0a33f77542c8d5450549">SFI__GETWINDOWCONTEXTHELPID</a>);</div>
<div class="line"><a name="l02824"></a><span class="lineno"> 2824</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03284">NtUserCallHwnd()</a> , 以及 <a class="el" href="a00335_source.html#l00060">SFI__GETWINDOWCONTEXTHELPID</a>.</p>

</div>
</div>
<a id="a62d401b4c96d9c11e1edb8a0ed0aa6ef"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a62d401b4c96d9c11e1edb8a0ed0aa6ef">&#9670;&nbsp;</a></span>GetWindowRgn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int GetWindowRgn </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hrgn</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03123">3123</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03124"></a><span class="lineno"> 3124</span>&#160;{</div>
<div class="line"><a name="l03125"></a><span class="lineno"> 3125</span>&#160;    <span class="keywordtype">int</span> code;</div>
<div class="line"><a name="l03126"></a><span class="lineno"> 3126</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l03127"></a><span class="lineno"> 3127</span>&#160;    HRGN hrgnClipClient;</div>
<div class="line"><a name="l03128"></a><span class="lineno"> 3128</span>&#160; </div>
<div class="line"><a name="l03129"></a><span class="lineno"> 3129</span>&#160;    <span class="keywordflow">if</span> ((pwnd = <a class="code" href="a00293.html#a41d387d1b2d42169cbaa2092c8a02abf">ValidateHwnd</a>(hwnd)) == NULL) {</div>
<div class="line"><a name="l03130"></a><span class="lineno"> 3130</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l03131"></a><span class="lineno"> 3131</span>&#160;    }</div>
<div class="line"><a name="l03132"></a><span class="lineno"> 3132</span>&#160; </div>
<div class="line"><a name="l03133"></a><span class="lineno"> 3133</span>&#160;    FIXUP_HANDLE(hrgn);</div>
<div class="line"><a name="l03134"></a><span class="lineno"> 3134</span>&#160;    <span class="keywordflow">if</span> (hrgn == NULL)</div>
<div class="line"><a name="l03135"></a><span class="lineno"> 3135</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l03136"></a><span class="lineno"> 3136</span>&#160; </div>
<div class="line"><a name="l03137"></a><span class="lineno"> 3137</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03138"></a><span class="lineno"> 3138</span>&#160;<span class="comment">     * If there is no region selected into this window, then return error</span></div>
<div class="line"><a name="l03139"></a><span class="lineno"> 3139</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03140"></a><span class="lineno"> 3140</span>&#160;    <span class="keywordflow">if</span> (pwnd-&gt;<a class="code" href="a02581.html#a860be5351f601ab541124507007056aa">hrgnClip</a> == NULL)</div>
<div class="line"><a name="l03141"></a><span class="lineno"> 3141</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l03142"></a><span class="lineno"> 3142</span>&#160; </div>
<div class="line"><a name="l03143"></a><span class="lineno"> 3143</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03144"></a><span class="lineno"> 3144</span>&#160;<span class="comment">     * Get a copy of the window clipping region - create a local</span></div>
<div class="line"><a name="l03145"></a><span class="lineno"> 3145</span>&#160;<span class="comment">     * region representing the server region, then destroy it after.</span></div>
<div class="line"><a name="l03146"></a><span class="lineno"> 3146</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03147"></a><span class="lineno"> 3147</span>&#160; </div>
<div class="line"><a name="l03148"></a><span class="lineno"> 3148</span>&#160;    hrgnClipClient = pwnd-&gt;<a class="code" href="a02581.html#a860be5351f601ab541124507007056aa">hrgnClip</a>;</div>
<div class="line"><a name="l03149"></a><span class="lineno"> 3149</span>&#160;    FIXUP_HANDLE(hrgnClipClient);</div>
<div class="line"><a name="l03150"></a><span class="lineno"> 3150</span>&#160;    <span class="keywordflow">if</span> (hrgnClipClient == NULL)</div>
<div class="line"><a name="l03151"></a><span class="lineno"> 3151</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l03152"></a><span class="lineno"> 3152</span>&#160; </div>
<div class="line"><a name="l03153"></a><span class="lineno"> 3153</span>&#160;    code = CombineRgn(hrgn, hrgnClipClient, (HRGN)0, RGN_COPY);</div>
<div class="line"><a name="l03154"></a><span class="lineno"> 3154</span>&#160; </div>
<div class="line"><a name="l03155"></a><span class="lineno"> 3155</span>&#160;    <span class="keywordflow">if</span> (code == ERROR)</div>
<div class="line"><a name="l03156"></a><span class="lineno"> 3156</span>&#160;        <span class="keywordflow">return</span> ERROR;</div>
<div class="line"><a name="l03157"></a><span class="lineno"> 3157</span>&#160; </div>
<div class="line"><a name="l03158"></a><span class="lineno"> 3158</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03159"></a><span class="lineno"> 3159</span>&#160;<span class="comment">     * Offset it to window rect coordinates (not client rect coordinates)</span></div>
<div class="line"><a name="l03160"></a><span class="lineno"> 3160</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03161"></a><span class="lineno"> 3161</span>&#160;    code = OffsetRgn(hrgn, -pwnd-&gt;<a class="code" href="a02581.html#a2778d611c2b27395e559c94d05732e1f">rcWindow</a>.left, -pwnd-&gt;<a class="code" href="a02581.html#a2778d611c2b27395e559c94d05732e1f">rcWindow</a>.top);</div>
<div class="line"><a name="l03162"></a><span class="lineno"> 3162</span>&#160; </div>
<div class="line"><a name="l03163"></a><span class="lineno"> 3163</span>&#160;    <span class="keywordflow">return</span> code;</div>
<div class="line"><a name="l03164"></a><span class="lineno"> 3164</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l01427">tagWND::hrgnClip</a>, <a class="el" href="a00365_source.html#l01398">tagWND::rcWindow</a> , 以及 <a class="el" href="a00293_source.html#l00090">ValidateHwnd</a>.</p>

</div>
</div>
<a id="a910f21781ee934e72bed5dfe6ec00e7c"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a910f21781ee934e72bed5dfe6ec00e7c">&#9670;&nbsp;</a></span>GrayStringA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL GrayStringA </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HBRUSH&#160;</td>
          <td class="paramname"><em>hbr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GRAYSTRINGPROC&#160;</td>
          <td class="paramname"><em>lpfnPrint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPARAM&#160;</td>
          <td class="paramname"><em>lParam</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cy</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01637">1637</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01647"></a><span class="lineno"> 1647</span>&#160;{</div>
<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00026.html#a9be26eaf6bb4ba7bef6f896caabfd8db">InnerGrayStringAorW</a>(hdc,</div>
<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span>&#160;                                hbr,</div>
<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span>&#160;                                lpfnPrint,</div>
<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span>&#160;                                lParam,</div>
<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span>&#160;                                cch,</div>
<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span>&#160;                                x,</div>
<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span>&#160;                                y,</div>
<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span>&#160;                                cx,</div>
<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span>&#160;                                <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span>&#160;                                TRUE));</div>
<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00716_source.html#l00456">cy</a> , 以及 <a class="el" href="a00026_source.html#l01492">InnerGrayStringAorW()</a>.</p>

</div>
</div>
<a id="a5c3dcd8260d9b4f64985f09da647d4bc"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5c3dcd8260d9b4f64985f09da647d4bc">&#9670;&nbsp;</a></span>GrayStringW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL GrayStringW </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HBRUSH&#160;</td>
          <td class="paramname"><em>hbr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GRAYSTRINGPROC&#160;</td>
          <td class="paramname"><em>lpfnPrint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPARAM&#160;</td>
          <td class="paramname"><em>lParam</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cy</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01660">1660</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01670"></a><span class="lineno"> 1670</span>&#160;{</div>
<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00026.html#a9be26eaf6bb4ba7bef6f896caabfd8db">InnerGrayStringAorW</a>(hdc,</div>
<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span>&#160;                                hbr,</div>
<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span>&#160;                                lpfnPrint,</div>
<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span>&#160;                                lParam,</div>
<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span>&#160;                                cch,</div>
<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span>&#160;                                x,</div>
<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span>&#160;                                y,</div>
<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span>&#160;                                cx,</div>
<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span>&#160;                                <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span>&#160;                                FALSE));</div>
<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00716_source.html#l00456">cy</a> , 以及 <a class="el" href="a00026_source.html#l01492">InnerGrayStringAorW()</a>.</p>

</div>
</div>
<a id="a9be26eaf6bb4ba7bef6f896caabfd8db"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9be26eaf6bb4ba7bef6f896caabfd8db">&#9670;&nbsp;</a></span>InnerGrayStringAorW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL InnerGrayStringAorW </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HBRUSH&#160;</td>
          <td class="paramname"><em>hbr</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">GRAYSTRINGPROC&#160;</td>
          <td class="paramname"><em>lpfnPrint</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPARAM&#160;</td>
          <td class="paramname"><em>lParam</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cch</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>x</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>y</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>cy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bAnsi</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01492">1492</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01503"></a><span class="lineno"> 1503</span>&#160;{</div>
<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span>&#160;    HBITMAP hbm;</div>
<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span>&#160;    HBITMAP hbmOld;</div>
<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span>&#160;    BOOL    fResult;</div>
<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span>&#160;    HFONT   hFontSave = NULL;</div>
<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span>&#160;    BOOL    fReturn = FALSE;</div>
<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span>&#160; </div>
<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span>&#160;<span class="comment">     * Win 3.1 tries to calc the size even if we don&#39;t know if it is a string.</span></div>
<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span>&#160;    <span class="keywordflow">if</span> (cch == 0) {</div>
<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span>&#160; </div>
<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span>&#160;        <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span>&#160; </div>
<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span>&#160;            cch = bAnsi ? strlen((LPSTR)lParam) : wcslen((LPWSTR)lParam);</div>
<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span>&#160; </div>
<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span>&#160;        } except (EXCEPTION_EXECUTE_HANDLER) {</div>
<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span>&#160;            fReturn = TRUE;</div>
<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span>&#160;        }</div>
<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span>&#160; </div>
<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span>&#160;        <span class="keywordflow">if</span> (fReturn)</div>
<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span>&#160;    }</div>
<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span>&#160; </div>
<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span>&#160;    <span class="keywordflow">if</span> (cx == 0 || <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a> == 0) {</div>
<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span>&#160; </div>
<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span>&#160;       SIZE size;</div>
<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span>&#160; </div>
<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span>&#160;<span class="comment">         * We use the caller supplied hdc (instead of hdcBits) since we may be</span></div>
<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span>&#160;<span class="comment">         * graying a font which is different than the system font and we want to</span></div>
<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span>&#160;<span class="comment">         * get the proper text extents.</span></div>
<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span>&#160;        <span class="keywordflow">try</span> {</div>
<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span>&#160;            <span class="keywordflow">if</span> (bAnsi) {</div>
<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span>&#160;                GetTextExtentPointA(hdc, (LPSTR)lParam, cch, &amp;size);</div>
<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span>&#160;                GetTextExtentPointW(hdc, (LPWSTR)lParam, cch, &amp;size);</div>
<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span>&#160;            }</div>
<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span>&#160; </div>
<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span>&#160;            cx = size.cx;</div>
<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span>&#160;            <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a> = size.cy;</div>
<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span>&#160; </div>
<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span>&#160;        } except (EXCEPTION_EXECUTE_HANDLER) {</div>
<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span>&#160;            fReturn = TRUE;</div>
<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span>&#160;        }</div>
<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span>&#160; </div>
<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span>&#160;        <span class="keywordflow">if</span> (fReturn)</div>
<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span>&#160;    }</div>
<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span>&#160; </div>
<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a> (<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a> != NULL);</div>
<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span>&#160; </div>
<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span>&#160;    RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#abaa886e5d183510c7ba0aa32e8b083d3">gcsHdc</a>);</div>
<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span>&#160; </div>
<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="a00020.html#ac188119d2ba17e059f3822de9f7a110a">gcxGray</a> &lt; cx || <a class="code" href="a00020.html#a5936fa3e640c0cdc177e305372731783">gcyGray</a> &lt; <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>) {</div>
<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span>&#160; </div>
<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span>&#160;        <span class="keywordflow">if</span> ((hbm = CreateBitmap(cx, <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, 1, 1, 0L)) != NULL) {</div>
<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span>&#160; </div>
<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span>&#160;            hbmOld = SelectObject(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, hbm);</div>
<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span>&#160;            DeleteObject(hbmOld);</div>
<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span>&#160; </div>
<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span>&#160;            <a class="code" href="a00020.html#ac188119d2ba17e059f3822de9f7a110a">gcxGray</a> = cx;</div>
<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span>&#160;            <a class="code" href="a00020.html#a5936fa3e640c0cdc177e305372731783">gcyGray</a> = <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>;</div>
<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span>&#160; </div>
<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span>&#160;            cx = <a class="code" href="a00020.html#ac188119d2ba17e059f3822de9f7a110a">gcxGray</a>;</div>
<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span>&#160;            <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a> = <a class="code" href="a00020.html#a5936fa3e640c0cdc177e305372731783">gcyGray</a>;</div>
<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span>&#160;        }</div>
<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span>&#160;    }</div>
<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span>&#160; </div>
<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span>&#160;<span class="comment">     * Force the ghdcGray font to be the same as hDC; ghdcGray is always</span></div>
<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span>&#160;<span class="comment">     * the system font</span></div>
<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span>&#160;    hFontSave = SelectObject(hdc, <a class="code" href="a00020.html#ae142b9698e40ef094e7481d595ddc9ae">ghFontSys</a>);</div>
<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span>&#160; </div>
<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span>&#160;    <span class="keywordflow">if</span> (hFontSave != <a class="code" href="a00020.html#ae142b9698e40ef094e7481d595ddc9ae">ghFontSys</a>) {</div>
<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span>&#160;        SelectObject(hdc, hFontSave);</div>
<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span>&#160;        hFontSave = SelectObject(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, hFontSave);</div>
<div class="line"><a name="l01583"></a><span class="lineno"> 1583</span>&#160;    }</div>
<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span>&#160; </div>
<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span>&#160;    <span class="keywordflow">if</span> (lpfnPrint != NULL) {</div>
<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span>&#160;        PatBlt(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, 0, 0, cx, <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, WHITENESS);</div>
<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span>&#160;        fResult = (*lpfnPrint)(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, lParam, cch);</div>
<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span>&#160; </div>
<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span>&#160;        <span class="keywordflow">if</span> (bAnsi) {</div>
<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span>&#160;            fResult = TextOutA(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, 0, 0, (LPSTR)lParam, cch);</div>
<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span>&#160;            fResult = TextOutW(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, 0, 0, (LPWSTR)lParam, cch);</div>
<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span>&#160;        }</div>
<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span>&#160;    }</div>
<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span>&#160; </div>
<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span>&#160;    <span class="keywordflow">if</span> (fResult)</div>
<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span>&#160;        PatBlt(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, 0, 0, cx, <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>, DESTINATION | PATTERN);</div>
<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span>&#160; </div>
<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span>&#160;    <span class="keywordflow">if</span> (fResult || cch == -1) {</div>
<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span>&#160; </div>
<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span>&#160;        HBRUSH hbrSave;</div>
<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span>&#160;        <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>  textColorSave;</div>
<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span>&#160;        <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>  bkColorSave;</div>
<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span>&#160; </div>
<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span>&#160;        textColorSave = SetTextColor(hdc, 0x00000000L);</div>
<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span>&#160;        bkColorSave = SetBkColor(hdc, 0x00FFFFFFL);</div>
<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span>&#160; </div>
<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span>&#160;        hbrSave = SelectObject(hdc, hbr ? hbr : <a class="code" href="a00020.html#a2c6de28f0ac64aed3f713793267b9a4e">ghbrWindowText</a>);</div>
<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span>&#160; </div>
<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span>&#160;        BitBlt(hdc,</div>
<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span>&#160;               x,</div>
<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span>&#160;               y,</div>
<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span>&#160;               cx,</div>
<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span>&#160;               <a class="code" href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a>,</div>
<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span>&#160;               <a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>,</div>
<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span>&#160;               0,</div>
<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span>&#160;               0,</div>
<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span>&#160;               (((PATTERN ^ DESTINATION) &amp; SOURCE) ^ PATTERN));</div>
<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span>&#160; </div>
<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span>&#160;        SelectObject(hdc, hbrSave);</div>
<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span>&#160; </div>
<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span>&#160;<span class="comment">         * Restore saved colors</span></div>
<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span>&#160;        SetTextColor(hdc, textColorSave);</div>
<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span>&#160;        SetBkColor(hdc, bkColorSave);</div>
<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span>&#160;    }</div>
<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span>&#160; </div>
<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span>&#160;    SelectObject(<a class="code" href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a>, hFontSave);</div>
<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span>&#160; </div>
<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span>&#160;    RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#abaa886e5d183510c7ba0aa32e8b083d3">gcsHdc</a>);</div>
<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span>&#160; </div>
<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span>&#160;    <span class="keywordflow">return</span> fResult;</div>
<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00716_source.html#l00456">cy</a>, <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00020_source.html#l00096">gcsHdc</a>, <a class="el" href="a00020_source.html#l00103">gcxGray</a>, <a class="el" href="a00020_source.html#l00104">gcyGray</a>, <a class="el" href="a00020_source.html#l00102">ghbrWindowText</a>, <a class="el" href="a00020_source.html#l00100">ghdcGray</a>, <a class="el" href="a00020_source.html#l00101">ghFontSys</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l01637">GrayStringA()</a> , 以及 <a class="el" href="a00026_source.html#l01660">GrayStringW()</a>.</p>

</div>
</div>
<a id="ae71a433c15cfe941766e3b6ff35d177f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae71a433c15cfe941766e3b6ff35d177f">&#9670;&nbsp;</a></span>InvalidateRgn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI InvalidateRgn </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hWnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hRgn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bErase</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01190">1190</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01191"></a><span class="lineno"> 1191</span>&#160;{</div>
<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span>&#160;    <span class="keywordflow">if</span> (hRgn != NULL) {</div>
<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span>&#160;        FIXUP_HANDLE(hRgn);</div>
<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span>&#160;        <span class="keywordflow">if</span> (hRgn == NULL)</div>
<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span>&#160;    }</div>
<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span>&#160; </div>
<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a5b4df910122c30dea0ccbaf23dc50f44">NtUserInvalidateRgn</a>(hWnd, hRgn, bErase);</div>
<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l05362">NtUserInvalidateRgn()</a>.</p>

</div>
</div>
<a id="a8b7ca844be3572943ea049c1462582e0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8b7ca844be3572943ea049c1462582e0">&#9670;&nbsp;</a></span>KillSystemTimer()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL KillSystemTimer </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>nIDEvent</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02685">2685</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02688"></a><span class="lineno"> 2688</span>&#160;{</div>
<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a4587e82182c73aeb97a7f528b5dfdaa0">NtUserCallHwndParam</a>(hwnd, nIDEvent, <a class="code" href="a00335.html#a2863b83c175deab1ae41f8f8408a5160">SFI__KILLSYSTEMTIMER</a>);</div>
<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03370">NtUserCallHwndParam()</a> , 以及 <a class="el" href="a00335_source.html#l00017">SFI__KILLSYSTEMTIMER</a>.</p>

</div>
</div>
<a id="a9aeba22cd3242ce0a5dfd878e83cbf3f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9aeba22cd3242ce0a5dfd878e83cbf3f">&#9670;&nbsp;</a></span>LoadKeyboardLayoutA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HKL LoadKeyboardLayoutA </td>
          <td>(</td>
          <td class="paramtype">LPCSTR&#160;</td>
          <td class="paramname"><em>lpszKLName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>uFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03712">3712</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03715"></a><span class="lineno"> 3715</span>&#160;{</div>
<div class="line"><a name="l03716"></a><span class="lineno"> 3716</span>&#160;    WCHAR awchKLName[MAX_PATH];</div>
<div class="line"><a name="l03717"></a><span class="lineno"> 3717</span>&#160;    LPWSTR lpBuffer = awchKLName;</div>
<div class="line"><a name="l03718"></a><span class="lineno"> 3718</span>&#160; </div>
<div class="line"><a name="l03719"></a><span class="lineno"> 3719</span>&#160;    <span class="keywordflow">if</span> (!MBToWCS(lpszKLName, -1, &amp;lpBuffer, <span class="keyword">sizeof</span>(awchKLName), FALSE))</div>
<div class="line"><a name="l03720"></a><span class="lineno"> 3720</span>&#160;        <span class="keywordflow">return</span> (HKL)NULL;</div>
<div class="line"><a name="l03721"></a><span class="lineno"> 3721</span>&#160; </div>
<div class="line"><a name="l03722"></a><span class="lineno"> 3722</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#a65777ad273ebbc9f15685157f4634b3e">LoadKeyboardLayoutW</a>(awchKLName, uFlags);</div>
<div class="line"><a name="l03723"></a><span class="lineno"> 3723</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l03678">LoadKeyboardLayoutW()</a>.</p>

</div>
</div>
<a id="a9db87c9998a5f67cb336be51d1d43661"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9db87c9998a5f67cb336be51d1d43661">&#9670;&nbsp;</a></span>LoadKeyboardLayoutEx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HKL LoadKeyboardLayoutEx </td>
          <td>(</td>
          <td class="paramtype">HKL&#160;</td>
          <td class="paramname"><em>hkl</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPCWSTR&#160;</td>
          <td class="paramname"><em>lpszKLName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>uFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03628">3628</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03632"></a><span class="lineno"> 3632</span>&#160;{</div>
<div class="line"><a name="l03633"></a><span class="lineno"> 3633</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> offTable;</div>
<div class="line"><a name="l03634"></a><span class="lineno"> 3634</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> KbdInputLocale;</div>
<div class="line"><a name="l03635"></a><span class="lineno"> 3635</span>&#160;    HANDLE hFile;</div>
<div class="line"><a name="l03636"></a><span class="lineno"> 3636</span>&#160;    HKL hKbdLayout;</div>
<div class="line"><a name="l03637"></a><span class="lineno"> 3637</span>&#160;    WCHAR awchKL[KL_NAMELENGTH];</div>
<div class="line"><a name="l03638"></a><span class="lineno"> 3638</span>&#160; </div>
<div class="line"><a name="l03639"></a><span class="lineno"> 3639</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03640"></a><span class="lineno"> 3640</span>&#160;<span class="comment">     * NULL hkl is not allowed.</span></div>
<div class="line"><a name="l03641"></a><span class="lineno"> 3641</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03642"></a><span class="lineno"> 3642</span>&#160;    <span class="keywordflow">if</span> (hkl == (HKL)NULL) {</div>
<div class="line"><a name="l03643"></a><span class="lineno"> 3643</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03644"></a><span class="lineno"> 3644</span>&#160;    }</div>
<div class="line"><a name="l03645"></a><span class="lineno"> 3645</span>&#160; </div>
<div class="line"><a name="l03646"></a><span class="lineno"> 3646</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03647"></a><span class="lineno"> 3647</span>&#160;<span class="comment">     * If there is a substitute keyboard layout OpenKeyboardLayoutFile returns</span></div>
<div class="line"><a name="l03648"></a><span class="lineno"> 3648</span>&#160;<span class="comment">     * the substitute keyboard layout name to load.</span></div>
<div class="line"><a name="l03649"></a><span class="lineno"> 3649</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03650"></a><span class="lineno"> 3650</span>&#160;    wcsncpy( awchKL, lpszKLName, KL_NAMELENGTH - 1 );</div>
<div class="line"><a name="l03651"></a><span class="lineno"> 3651</span>&#160;    awchKL[KL_NAMELENGTH - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03652"></a><span class="lineno"> 3652</span>&#160; </div>
<div class="line"><a name="l03653"></a><span class="lineno"> 3653</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03654"></a><span class="lineno"> 3654</span>&#160;<span class="comment">     * Open the layout file</span></div>
<div class="line"><a name="l03655"></a><span class="lineno"> 3655</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03656"></a><span class="lineno"> 3656</span>&#160;    hFile = <a class="code" href="a00026.html#a76a56627afc69c00f014d1b508b37ab9">OpenKeyboardLayoutFile</a>(awchKL, uFlags, &amp;offTable, &amp;KbdInputLocale);</div>
<div class="line"><a name="l03657"></a><span class="lineno"> 3657</span>&#160;    <span class="keywordflow">if</span> (hFile == NULL)</div>
<div class="line"><a name="l03658"></a><span class="lineno"> 3658</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03659"></a><span class="lineno"> 3659</span>&#160; </div>
<div class="line"><a name="l03660"></a><span class="lineno"> 3660</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03661"></a><span class="lineno"> 3661</span>&#160;<span class="comment">     * Call the server to read the keyboard tables.  Note that</span></div>
<div class="line"><a name="l03662"></a><span class="lineno"> 3662</span>&#160;<span class="comment">     * the server will close the file handle when it is done.</span></div>
<div class="line"><a name="l03663"></a><span class="lineno"> 3663</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03664"></a><span class="lineno"> 3664</span>&#160;    hKbdLayout = <a class="code" href="a03611.html#a231fdf82918c11fa7049f9485fc1fb06">_LoadKeyboardLayoutEx</a>(hFile, offTable, hkl, awchKL, KbdInputLocale, uFlags);</div>
<div class="line"><a name="l03665"></a><span class="lineno"> 3665</span>&#160;    NtClose(hFile);</div>
<div class="line"><a name="l03666"></a><span class="lineno"> 3666</span>&#160; </div>
<div class="line"><a name="l03667"></a><span class="lineno"> 3667</span>&#160;    <span class="keywordflow">return</span> hKbdLayout;</div>
<div class="line"><a name="l03668"></a><span class="lineno"> 3668</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l01528">_LoadKeyboardLayoutEx()</a>, <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

</div>
</div>
<a id="a65777ad273ebbc9f15685157f4634b3e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a65777ad273ebbc9f15685157f4634b3e">&#9670;&nbsp;</a></span>LoadKeyboardLayoutW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HKL LoadKeyboardLayoutW </td>
          <td>(</td>
          <td class="paramtype">LPCWSTR&#160;</td>
          <td class="paramname"><em>lpszKLName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>uFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03678">3678</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03681"></a><span class="lineno"> 3681</span>&#160;{</div>
<div class="line"><a name="l03682"></a><span class="lineno"> 3682</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> offTable;</div>
<div class="line"><a name="l03683"></a><span class="lineno"> 3683</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> KbdInputLocale;</div>
<div class="line"><a name="l03684"></a><span class="lineno"> 3684</span>&#160;    HANDLE hFile;</div>
<div class="line"><a name="l03685"></a><span class="lineno"> 3685</span>&#160;    HKL hKbdLayout;</div>
<div class="line"><a name="l03686"></a><span class="lineno"> 3686</span>&#160;    WCHAR awchKL[KL_NAMELENGTH];</div>
<div class="line"><a name="l03687"></a><span class="lineno"> 3687</span>&#160; </div>
<div class="line"><a name="l03688"></a><span class="lineno"> 3688</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03689"></a><span class="lineno"> 3689</span>&#160;<span class="comment">     * If there is a substitute keyboard layout OpenKeyboardLayoutFile returns</span></div>
<div class="line"><a name="l03690"></a><span class="lineno"> 3690</span>&#160;<span class="comment">     * the substitute keyboard layout name to load.</span></div>
<div class="line"><a name="l03691"></a><span class="lineno"> 3691</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03692"></a><span class="lineno"> 3692</span>&#160;    wcsncpy( awchKL, lpszKLName, KL_NAMELENGTH - 1 );</div>
<div class="line"><a name="l03693"></a><span class="lineno"> 3693</span>&#160;    awchKL[KL_NAMELENGTH - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03694"></a><span class="lineno"> 3694</span>&#160; </div>
<div class="line"><a name="l03695"></a><span class="lineno"> 3695</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03696"></a><span class="lineno"> 3696</span>&#160;<span class="comment">     * Open the layout file</span></div>
<div class="line"><a name="l03697"></a><span class="lineno"> 3697</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03698"></a><span class="lineno"> 3698</span>&#160;    hFile = <a class="code" href="a00026.html#a76a56627afc69c00f014d1b508b37ab9">OpenKeyboardLayoutFile</a>(awchKL, uFlags, &amp;offTable, &amp;KbdInputLocale);</div>
<div class="line"><a name="l03699"></a><span class="lineno"> 3699</span>&#160;    <span class="keywordflow">if</span> (hFile == NULL)</div>
<div class="line"><a name="l03700"></a><span class="lineno"> 3700</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03701"></a><span class="lineno"> 3701</span>&#160; </div>
<div class="line"><a name="l03702"></a><span class="lineno"> 3702</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03703"></a><span class="lineno"> 3703</span>&#160;<span class="comment">     * Call the server to read the keyboard tables.  Note that</span></div>
<div class="line"><a name="l03704"></a><span class="lineno"> 3704</span>&#160;<span class="comment">     * the server will close the file handle when it is done.</span></div>
<div class="line"><a name="l03705"></a><span class="lineno"> 3705</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03706"></a><span class="lineno"> 3706</span>&#160;    hKbdLayout = <a class="code" href="a03611.html#a231fdf82918c11fa7049f9485fc1fb06">_LoadKeyboardLayoutEx</a>(hFile, offTable, (HKL)NULL, awchKL, KbdInputLocale, uFlags);</div>
<div class="line"><a name="l03707"></a><span class="lineno"> 3707</span>&#160;    NtClose(hFile);</div>
<div class="line"><a name="l03708"></a><span class="lineno"> 3708</span>&#160; </div>
<div class="line"><a name="l03709"></a><span class="lineno"> 3709</span>&#160;    <span class="keywordflow">return</span> hKbdLayout;</div>
<div class="line"><a name="l03710"></a><span class="lineno"> 3710</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l01528">_LoadKeyboardLayoutEx()</a>, <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03712">LoadKeyboardLayoutA()</a>, <a class="el" href="a00026_source.html#l03378">LoadPreloadKeyboardLayouts()</a> , 以及 <a class="el" href="a03611_source.html#l00065">UpdatePerUserSystemParameters()</a>.</p>

</div>
</div>
<a id="a0f9ce03ba6a710019a96f91ca99c1ab0"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0f9ce03ba6a710019a96f91ca99c1ab0">&#9670;&nbsp;</a></span>LoadLocalFonts()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LoadLocalFonts </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02710">2710</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02711"></a><span class="lineno"> 2711</span>&#160;{</div>
<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span>&#160;    <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(FALSE,<a class="code" href="a00335.html#a828e1ae8ab3eed8c24b8425451c5d392">SFI_XXXLW_LOADFONTS</a>);</div>
<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00037">SFI_XXXLW_LOADFONTS</a>.</p>

</div>
</div>
<a id="a18b9b48b567ab5010e350cbab8fa27ca"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a18b9b48b567ab5010e350cbab8fa27ca">&#9670;&nbsp;</a></span>LoadPreloadKeyboardLayouts()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VOID LoadPreloadKeyboardLayouts </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03378">3378</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03379"></a><span class="lineno"> 3379</span>&#160;{</div>
<div class="line"><a name="l03380"></a><span class="lineno"> 3380</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>  i;</div>
<div class="line"><a name="l03381"></a><span class="lineno"> 3381</span>&#160;    WCHAR szPreLoadee[<a class="code" href="a00026.html#a763cdb0985d5d3030736a303a16c0809">NSIZEPRELOAD</a>];</div>
<div class="line"><a name="l03382"></a><span class="lineno"> 3382</span>&#160;    WCHAR lpszName[KL_NAMELENGTH];</div>
<div class="line"><a name="l03383"></a><span class="lineno"> 3383</span>&#160; </div>
<div class="line"><a name="l03384"></a><span class="lineno"> 3384</span>&#160;    <span class="keywordflow">for</span> ( i=2; i; i++) {</div>
<div class="line"><a name="l03385"></a><span class="lineno"> 3385</span>&#160;        wsprintf( szPreLoadee, <a class="code" href="a00026.html#ae120b606a547d47bb2b247390cd99e34">szPreLoadSeq</a>, i );</div>
<div class="line"><a name="l03386"></a><span class="lineno"> 3386</span>&#160;        <span class="keywordflow">if</span> ((GetPrivateProfileStringW(</div>
<div class="line"><a name="l03387"></a><span class="lineno"> 3387</span>&#160;                 L<span class="stringliteral">&quot;Preload&quot;</span>,</div>
<div class="line"><a name="l03388"></a><span class="lineno"> 3388</span>&#160;                 szPreLoadee,</div>
<div class="line"><a name="l03389"></a><span class="lineno"> 3389</span>&#160;                 L<span class="stringliteral">&quot;&quot;</span>,                            <span class="comment">// default = NULL</span></div>
<div class="line"><a name="l03390"></a><span class="lineno"> 3390</span>&#160;                 lpszName,                       <span class="comment">// output buffer</span></div>
<div class="line"><a name="l03391"></a><span class="lineno"> 3391</span>&#160;                 KL_NAMELENGTH,</div>
<div class="line"><a name="l03392"></a><span class="lineno"> 3392</span>&#160;                 L<span class="stringliteral">&quot;keyboardlayout.ini&quot;</span>) == -1 ) || (*lpszName == L<span class="charliteral">&#39;\0&#39;</span>)) {</div>
<div class="line"><a name="l03393"></a><span class="lineno"> 3393</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l03394"></a><span class="lineno"> 3394</span>&#160;        }</div>
<div class="line"><a name="l03395"></a><span class="lineno"> 3395</span>&#160;        <a class="code" href="a00026.html#a65777ad273ebbc9f15685157f4634b3e">LoadKeyboardLayoutW</a>(lpszName, KLF_REPLACELANG |KLF_SUBSTITUTE_OK |KLF_NOTELLSHELL);</div>
<div class="line"><a name="l03396"></a><span class="lineno"> 3396</span>&#160;    }</div>
<div class="line"><a name="l03397"></a><span class="lineno"> 3397</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l03678">LoadKeyboardLayoutW()</a>, <a class="el" href="a00026_source.html#l03376">NSIZEPRELOAD</a>, <a class="el" href="a00026_source.html#l03374">szPreLoadSeq</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a03611_source.html#l00065">UpdatePerUserSystemParameters()</a>.</p>

</div>
</div>
<a id="a29d737f3a0cc139181cdbb3c6b63da33"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a29d737f3a0cc139181cdbb3c6b63da33">&#9670;&nbsp;</a></span>LoadRemoteFonts()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void LoadRemoteFonts </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02698">2698</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02699"></a><span class="lineno"> 2699</span>&#160;{</div>
<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span>&#160;    <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(TRUE,<a class="code" href="a00335.html#a828e1ae8ab3eed8c24b8425451c5d392">SFI_XXXLW_LOADFONTS</a>);</div>
<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00037">SFI_XXXLW_LOADFONTS</a>.</p>

</div>
</div>
<a id="a3cb22926bc104cab20cbb79f96e7ab7a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a3cb22926bc104cab20cbb79f96e7ab7a">&#9670;&nbsp;</a></span>MessageBeep()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL MessageBeep </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wType</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02722">2722</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02724"></a><span class="lineno"> 2724</span>&#160;{</div>
<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(wType, <a class="code" href="a00335.html#ad096793f5d5e556e0b51094e4776b11d">SFI_XXXMESSAGEBEEP</a>);</div>
<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00019">SFI_XXXMESSAGEBEEP</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00317_source.html#l00786">SKC1ButtonDown()</a> , 以及 <a class="el" href="a00320_source.html#l00636">SKT1SetCursor()</a>.</p>

</div>
</div>
<a id="a4c8b3ee5d9ada44761edd3441739b188"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4c8b3ee5d9ada44761edd3441739b188">&#9670;&nbsp;</a></span>MsgWaitForMultipleObjects()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WINAPI MsgWaitForMultipleObjects </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>nCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPHANDLE&#160;</td>
          <td class="paramname"><em>pHandles</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fWaitAll</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwMilliseconds</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwWakeMask</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01364">1364</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01370"></a><span class="lineno"> 1370</span>&#160;{</div>
<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span>&#160;    <span class="keywordflow">return</span>  <a class="code" href="a00026.html#a36cf1c3bd6b43137f1fe76c1e0c0ed71">MsgWaitForMultipleObjectsEx</a>(nCount, pHandles,</div>
<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span>&#160;                dwMilliseconds, dwWakeMask, fWaitAll?MWMO_WAITALL:0);</div>
<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01375">MsgWaitForMultipleObjectsEx()</a>.</p>

</div>
</div>
<a id="a36cf1c3bd6b43137f1fe76c1e0c0ed71"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a36cf1c3bd6b43137f1fe76c1e0c0ed71">&#9670;&nbsp;</a></span>MsgWaitForMultipleObjectsEx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WINAPI MsgWaitForMultipleObjectsEx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>nCount</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPHANDLE&#160;</td>
          <td class="paramname"><em>pHandles</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwMilliseconds</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwWakeMask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01375">1375</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01381"></a><span class="lineno"> 1381</span>&#160;{</div>
<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span>&#160;    HANDLE hEventInput;</div>
<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span>&#160;    PHANDLE ph;</div>
<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwIndex;</div>
<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span>&#160;    BOOL  ReenterWowScheduler;</div>
<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span>&#160;    <a class="code" href="a02477.html">PCLIENTINFO</a> pci;</div>
<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span>&#160;    HANDLE rgHandles[ 8 + 1 ];</div>
<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span>&#160;    BOOL fWaitAll = ((dwFlags &amp; MWMO_WAITALL) != 0);</div>
<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span>&#160;    BOOL fAlertable = ((dwFlags &amp; MWMO_ALERTABLE) != 0);</div>
<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span>&#160; </div>
<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span>&#160;    <span class="keywordflow">if</span> (dwFlags &amp; ~MWMO_VALID) {</div>
<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span>&#160;        <a class="code" href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a>(ERROR_INVALID_PARAMETER, <a class="code" href="a00371.html#afa5f32de88404289ec03cd2c0e61e94f">RIP_ERROR</a>, <span class="stringliteral">&quot;MsgWaitForMultipleObjectsEx, invalid flags 0x%08lx\n&quot;</span>, dwFlags);</div>
<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span>&#160;        <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)-1;</div>
<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span>&#160;    }</div>
<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span>&#160; </div>
<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span>&#160;    pci = GetClientInfo();</div>
<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span>&#160;    <span class="keywordflow">if</span> (pci == NULL)</div>
<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span>&#160;        <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)-1;</div>
<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span>&#160; </div>
<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span>&#160;<span class="comment">     * Need to call the server to get the input event.</span></div>
<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span>&#160;    hEventInput = <a class="code" href="a00362.html#a4507b6c8a6a331fb5cb4da55185cfa50">NtUserGetInputEvent</a>(dwWakeMask);</div>
<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span>&#160; </div>
<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span>&#160;<span class="comment">     * If GetInputEvent() returned NULL the DuplicateHandle() call</span></div>
<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span>&#160;<span class="comment">     * failed and we are hosed. If it returned -1 that means the</span></div>
<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span>&#160;<span class="comment">     * wake mask is already satisfied and we can simply return</span></div>
<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span>&#160;<span class="comment">     * the index for our input event handle if that&#39;s all we&#39;re</span></div>
<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span>&#160;<span class="comment">     * waiting for.</span></div>
<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span>&#160;    <span class="keywordflow">if</span> (hEventInput == NULL) {</div>
<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span>&#160;        <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;MsgWaitForMultipleObjectsEx, GetInputEvent failed\n&quot;</span>);</div>
<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span>&#160;        <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)-1;</div>
<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span>&#160;    } <span class="keywordflow">else</span> <span class="keywordflow">if</span> (hEventInput == (HANDLE)-1) {</div>
<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span>&#160;        <span class="keywordflow">if</span> (!fWaitAll || !nCount) {</div>
<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span>&#160;            <span class="keywordflow">return</span> nCount;</div>
<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span>&#160;        }</div>
<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span>&#160;        hEventInput = pci-&gt;<a class="code" href="a02477.html#a3c194fec8e59a3c52d6c3018cff46ae9">hEventQueueClient</a>;</div>
<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span>&#160;    }</div>
<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span>&#160; </div>
<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span>&#160;<span class="comment">     * If needed, allocate a new array of handles that will include</span></div>
<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span>&#160;<span class="comment">     * the input event handle.</span></div>
<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span>&#160;    ph = rgHandles;</div>
<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span>&#160;    <span class="keywordflow">if</span> (pHandles) {</div>
<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span>&#160; </div>
<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span>&#160;        <span class="keywordflow">if</span> (nCount &gt; 8) {</div>
<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span>&#160;            ph = (PHANDLE)LocalAlloc(LPTR, <span class="keyword">sizeof</span>(HANDLE) * (nCount + 1));</div>
<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span>&#160;            <span class="keywordflow">if</span> (ph == NULL)</div>
<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span>&#160;                <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)-1;</div>
<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span>&#160;        }</div>
<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span>&#160; </div>
<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span>&#160;        RtlCopyMemory((PVOID)ph, pHandles, <span class="keyword">sizeof</span>(HANDLE) * nCount);</div>
<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span>&#160; </div>
<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span>&#160;        <span class="comment">// if this isn&#39;t Zero, the function parameters are invalid</span></div>
<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span>&#160;        nCount = 0;</div>
<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span>&#160;    }</div>
<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span>&#160; </div>
<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span>&#160;    ph[nCount] = hEventInput;</div>
<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span>&#160; </div>
<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span>&#160; </div>
<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span>&#160;<span class="comment">     *  WowApps must exit the Wow scheduler otherwise other tasks</span></div>
<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span>&#160;<span class="comment">     *  in this Wow scheduler can&#39;t run. The only exception is if</span></div>
<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span>&#160;<span class="comment">     *  the timeout is Zero.  We pass -1 as the handle so we will go</span></div>
<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span>&#160;<span class="comment">     *  into the sleeptask AND return without going to sleep but letting</span></div>
<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span>&#160;<span class="comment">     *  other apps run.</span></div>
<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span>&#160;    <span class="keywordflow">if</span> ((pci-&gt;<a class="code" href="a02477.html#a3c509629a36511ee0d17273de6b9d6af">dwTIFlags</a> &amp; TIF_16BIT) &amp;&amp; dwMilliseconds) {</div>
<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span>&#160;        ReenterWowScheduler = TRUE;</div>
<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span>&#160;        <a class="code" href="a00362.html#abd6293054dfb58fa6bd91632b227cf11">NtUserWaitForMsgAndEvent</a>((HANDLE)0xffffffff);</div>
<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="a00362.html#a1a126aa946b044cf85f9a4ff5ae419de">NtUserGetThreadState</a>(UserThreadStateChangeBits) &amp; (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)dwWakeMask) {</div>
<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span>&#160;            SetEvent(hEventInput);</div>
<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span>&#160;        }</div>
<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span>&#160;        ReenterWowScheduler = FALSE;</div>
<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span>&#160;    }</div>
<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span>&#160; </div>
<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span>&#160;    dwIndex = WaitForMultipleObjectsEx(nCount + 1, ph, fWaitAll, dwMilliseconds, fAlertable);</div>
<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span>&#160; </div>
<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span>&#160;<span class="comment">     *  If needed reenter the wow scheduler</span></div>
<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span>&#160;    <span class="keywordflow">if</span> (ReenterWowScheduler) {</div>
<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span>&#160;        <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(DY_OLDYIELD, <a class="code" href="a00335.html#a3491d8f26b5092f0b2bf3cfe2701e5a6">SFI_XXXDIRECTEDYIELD</a>);</div>
<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span>&#160;    }</div>
<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span>&#160; </div>
<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span>&#160;    <span class="keywordflow">if</span> (ph != rgHandles) {</div>
<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span>&#160;        LocalFree(ph);</div>
<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span>&#160;    }</div>
<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span>&#160; </div>
<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span>&#160;    <span class="keywordflow">return</span> dwIndex;</div>
<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00365_source.html#l00378">_CLIENTINFO::dwTIFlags</a>, <a class="el" href="a00365_source.html#l00375">_CLIENTINFO::hEventQueueClient</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a>, <a class="el" href="a03614_source.html#l02260">NtUserGetInputEvent()</a>, <a class="el" href="a03614_source.html#l06224">NtUserGetThreadState()</a>, <a class="el" href="a03614_source.html#l01109">NtUserWaitForMsgAndEvent()</a>, <a class="el" href="a00371_source.html#l00028">RIP_ERROR</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00120">RIPERR1</a>, <a class="el" href="a00371_source.html#l00131">RIPMSG0</a>, <a class="el" href="a00335_source.html#l00040">SFI_XXXDIRECTEDYIELD</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00074_source.html#l00025">ExitWindowsWorker()</a>, <a class="el" href="a00026_source.html#l01364">MsgWaitForMultipleObjects()</a> , 以及 <a class="el" href="a00062_source.html#l01463">WaitForZombieTerminate()</a>.</p>

</div>
</div>
<a id="aa1c2ca50d464ad80e60109c9148b52b5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa1c2ca50d464ad80e60109c9148b52b5">&#9670;&nbsp;</a></span>OpenDesktopA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK OpenDesktopA </td>
          <td>(</td>
          <td class="paramtype">LPSTR&#160;</td>
          <td class="paramname"><em>pdesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02142">2142</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02147"></a><span class="lineno"> 2147</span>&#160;{</div>
<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span>&#160;    UNICODE_STRING UnicodeString;</div>
<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span>&#160;    HDESK hdesk;</div>
<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span>&#160; </div>
<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span>&#160;    <span class="keywordflow">if</span> (!RtlCreateUnicodeStringFromAsciiz(&amp;UnicodeString, pdesktop))</div>
<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span>&#160; </div>
<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span>&#160;    hdesk = <a class="code" href="a00026.html#a6c4833589a236b8903a861fe19222918">CommonOpenDesktop</a>(&amp;UnicodeString, dwFlags, fInherit, amRequest);</div>
<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span>&#160; </div>
<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span>&#160;    RtlFreeUnicodeString(&amp;UnicodeString);</div>
<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span>&#160; </div>
<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span>&#160;    <span class="keywordflow">return</span> hdesk;</div>
<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l02122">CommonOpenDesktop()</a>.</p>

</div>
</div>
<a id="aec87a1b0409d0184b7c1b4121c3d60f2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aec87a1b0409d0184b7c1b4121c3d60f2">&#9670;&nbsp;</a></span>OpenDesktopW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HDESK OpenDesktopW </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>pdesktop</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02161">2161</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02166"></a><span class="lineno"> 2166</span>&#160;{</div>
<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span>&#160;    UNICODE_STRING strDesktop;</div>
<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span>&#160; </div>
<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span>&#160;    RtlInitUnicodeString(&amp;strDesktop, pdesktop);</div>
<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span>&#160; </div>
<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#a6c4833589a236b8903a861fe19222918">CommonOpenDesktop</a>(&amp;strDesktop, dwFlags, fInherit, amRequest);</div>
<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l02122">CommonOpenDesktop()</a>.</p>

</div>
</div>
<a id="a0948ee79a3cdfac5f2521eff92191900"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0948ee79a3cdfac5f2521eff92191900">&#9670;&nbsp;</a></span>OpenIcon()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL OpenIcon </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02734">2734</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02736"></a><span class="lineno"> 2736</span>&#160;{</div>
<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#ae794df8019793b80a993235005d5552c">SFI_XXXOPENICON</a>);</div>
<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a> , 以及 <a class="el" href="a00335_source.html#l00045">SFI_XXXOPENICON</a>.</p>

</div>
</div>
<a id="a76a56627afc69c00f014d1b508b37ab9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a76a56627afc69c00f014d1b508b37ab9">&#9670;&nbsp;</a></span>OpenKeyboardLayoutFile()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE OpenKeyboardLayoutFile </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>lpszKLName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>uFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PUINT&#160;</td>
          <td class="paramname"><em>poffTable</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PUINT&#160;</td>
          <td class="paramname"><em>pKbdInputLocale</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03413">3413</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03418"></a><span class="lineno"> 3418</span>&#160;{</div>
<div class="line"><a name="l03419"></a><span class="lineno"> 3419</span>&#160;    WCHAR awchKL[KL_NAMELENGTH];</div>
<div class="line"><a name="l03420"></a><span class="lineno"> 3420</span>&#160;    WCHAR awchKLRegKey[<a class="code" href="a00026.html#abcd53e1f447bf113f860c89d2bfe25d9">NSZKLKEY</a>];</div>
<div class="line"><a name="l03421"></a><span class="lineno"> 3421</span>&#160;    LPWSTR lpszKLRegKey = &amp;awchKLRegKey[0];</div>
<div class="line"><a name="l03422"></a><span class="lineno"> 3422</span>&#160;    <a class="code" href="a00347.html#a6e6030f7dc50fba8bffa4e89f9328c85">PKBDTABLES</a> (*pfn)();</div>
<div class="line"><a name="l03423"></a><span class="lineno"> 3423</span>&#160;    LPWSTR pwszLib;</div>
<div class="line"><a name="l03424"></a><span class="lineno"> 3424</span>&#160;    LPWSTR pwszId;</div>
<div class="line"><a name="l03425"></a><span class="lineno"> 3425</span>&#160;    HANDLE hLibModule;</div>
<div class="line"><a name="l03426"></a><span class="lineno"> 3426</span>&#160;    WCHAR awchModName[MAX_PATH];</div>
<div class="line"><a name="l03427"></a><span class="lineno"> 3427</span>&#160;    UNICODE_STRING UnicodeString;</div>
<div class="line"><a name="l03428"></a><span class="lineno"> 3428</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wLayoutId;</div>
<div class="line"><a name="l03429"></a><span class="lineno"> 3429</span>&#160;    <a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wLanguageId;</div>
<div class="line"><a name="l03430"></a><span class="lineno"> 3430</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l03431"></a><span class="lineno"> 3431</span>&#160;    OBJECT_ATTRIBUTES OA;</div>
<div class="line"><a name="l03432"></a><span class="lineno"> 3432</span>&#160;    HANDLE hKey;</div>
<div class="line"><a name="l03433"></a><span class="lineno"> 3433</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> cbSize;</div>
<div class="line"><a name="l03434"></a><span class="lineno"> 3434</span>&#160;    <span class="keyword">struct </span>{</div>
<div class="line"><a name="l03435"></a><span class="lineno"> 3435</span>&#160;        KEY_VALUE_PARTIAL_INFORMATION KeyInfo;</div>
<div class="line"><a name="l03436"></a><span class="lineno"> 3436</span>&#160;        WCHAR awchLibName[<a class="code" href="a00026.html#ab9a6e7c8c7a31497ad2aab59eccdbfe6">CCH_KL_LIBNAME</a>];</div>
<div class="line"><a name="l03437"></a><span class="lineno"> 3437</span>&#160;    } KeyFile;</div>
<div class="line"><a name="l03438"></a><span class="lineno"> 3438</span>&#160;    <span class="keyword">struct </span>{</div>
<div class="line"><a name="l03439"></a><span class="lineno"> 3439</span>&#160;        KEY_VALUE_PARTIAL_INFORMATION KeyInfo;</div>
<div class="line"><a name="l03440"></a><span class="lineno"> 3440</span>&#160;        WCHAR awchId[<a class="code" href="a00026.html#a129c6ec17fae777c58c438effb08b90d">CCH_KL_ID</a>];</div>
<div class="line"><a name="l03441"></a><span class="lineno"> 3441</span>&#160;    } KeyId;</div>
<div class="line"><a name="l03442"></a><span class="lineno"> 3442</span>&#160; </div>
<div class="line"><a name="l03443"></a><span class="lineno"> 3443</span>&#160;    wLanguageId = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)wcstoul(lpszKLName, NULL, 16);</div>
<div class="line"><a name="l03444"></a><span class="lineno"> 3444</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03445"></a><span class="lineno"> 3445</span>&#160;<span class="comment">     * Substitute Layout if required.</span></div>
<div class="line"><a name="l03446"></a><span class="lineno"> 3446</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03447"></a><span class="lineno"> 3447</span>&#160;    <span class="keywordflow">if</span> (uFlags &amp; KLF_SUBSTITUTE_OK) {</div>
<div class="line"><a name="l03448"></a><span class="lineno"> 3448</span>&#160;        GetPrivateProfileStringW(</div>
<div class="line"><a name="l03449"></a><span class="lineno"> 3449</span>&#160;                L<span class="stringliteral">&quot;Substitutes&quot;</span>,</div>
<div class="line"><a name="l03450"></a><span class="lineno"> 3450</span>&#160;                lpszKLName,</div>
<div class="line"><a name="l03451"></a><span class="lineno"> 3451</span>&#160;                lpszKLName,        <span class="comment">// default == no change (no substitute found)</span></div>
<div class="line"><a name="l03452"></a><span class="lineno"> 3452</span>&#160;                awchKL,</div>
<div class="line"><a name="l03453"></a><span class="lineno"> 3453</span>&#160;                <span class="keyword">sizeof</span>(awchKL)/<span class="keyword">sizeof</span>(WCHAR),</div>
<div class="line"><a name="l03454"></a><span class="lineno"> 3454</span>&#160;                L<span class="stringliteral">&quot;keyboardlayout.ini&quot;</span>);</div>
<div class="line"><a name="l03455"></a><span class="lineno"> 3455</span>&#160; </div>
<div class="line"><a name="l03456"></a><span class="lineno"> 3456</span>&#160;        awchKL[KL_NAMELENGTH - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03457"></a><span class="lineno"> 3457</span>&#160;        wcscpy(lpszKLName, awchKL);</div>
<div class="line"><a name="l03458"></a><span class="lineno"> 3458</span>&#160;    }</div>
<div class="line"><a name="l03459"></a><span class="lineno"> 3459</span>&#160; </div>
<div class="line"><a name="l03460"></a><span class="lineno"> 3460</span>&#160;    wLayoutId = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)wcstoul(lpszKLName, NULL, 16);</div>
<div class="line"><a name="l03461"></a><span class="lineno"> 3461</span>&#160; </div>
<div class="line"><a name="l03462"></a><span class="lineno"> 3462</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03463"></a><span class="lineno"> 3463</span>&#160;<span class="comment">     * Get DLL name from the registry, load it, and get the entry point.</span></div>
<div class="line"><a name="l03464"></a><span class="lineno"> 3464</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03465"></a><span class="lineno"> 3465</span>&#160;    pwszLib = NULL;</div>
<div class="line"><a name="l03466"></a><span class="lineno"> 3466</span>&#160;    wcscpy(lpszKLRegKey, <a class="code" href="a00026.html#aed7c462c6c2968b207b5cc5808996709">szKLKey</a>);</div>
<div class="line"><a name="l03467"></a><span class="lineno"> 3467</span>&#160;    wcscat(lpszKLRegKey, lpszKLName);</div>
<div class="line"><a name="l03468"></a><span class="lineno"> 3468</span>&#160;    RtlInitUnicodeString(&amp;UnicodeString, lpszKLRegKey);</div>
<div class="line"><a name="l03469"></a><span class="lineno"> 3469</span>&#160;    InitializeObjectAttributes(&amp;OA, &amp;UnicodeString, OBJ_CASE_INSENSITIVE, NULL, NULL);</div>
<div class="line"><a name="l03470"></a><span class="lineno"> 3470</span>&#160; </div>
<div class="line"><a name="l03471"></a><span class="lineno"> 3471</span>&#160;    <span class="keywordflow">if</span> (NT_SUCCESS(NtOpenKey(&amp;hKey, KEY_READ, &amp;OA))) {</div>
<div class="line"><a name="l03472"></a><span class="lineno"> 3472</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03473"></a><span class="lineno"> 3473</span>&#160;<span class="comment">         * Read the &quot;Layout File&quot; value.</span></div>
<div class="line"><a name="l03474"></a><span class="lineno"> 3474</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03475"></a><span class="lineno"> 3475</span>&#160;         RtlInitUnicodeString(&amp;UnicodeString, <a class="code" href="a00026.html#a77cef7c8f3b2f972456755554e63c192">szKLFile</a>);</div>
<div class="line"><a name="l03476"></a><span class="lineno"> 3476</span>&#160; </div>
<div class="line"><a name="l03477"></a><span class="lineno"> 3477</span>&#160;        Status = NtQueryValueKey(hKey,</div>
<div class="line"><a name="l03478"></a><span class="lineno"> 3478</span>&#160;                &amp;UnicodeString,</div>
<div class="line"><a name="l03479"></a><span class="lineno"> 3479</span>&#160;                KeyValuePartialInformation,</div>
<div class="line"><a name="l03480"></a><span class="lineno"> 3480</span>&#160;                &amp;KeyFile,</div>
<div class="line"><a name="l03481"></a><span class="lineno"> 3481</span>&#160;                <span class="keyword">sizeof</span>(KeyFile),</div>
<div class="line"><a name="l03482"></a><span class="lineno"> 3482</span>&#160;                &amp;cbSize);</div>
<div class="line"><a name="l03483"></a><span class="lineno"> 3483</span>&#160; </div>
<div class="line"><a name="l03484"></a><span class="lineno"> 3484</span>&#160;        <span class="keywordflow">if</span> (Status == STATUS_BUFFER_OVERFLOW) {</div>
<div class="line"><a name="l03485"></a><span class="lineno"> 3485</span>&#160;            <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;OpenKeyboardLayoutFile - Buffer overflow.&quot;</span>);</div>
<div class="line"><a name="l03486"></a><span class="lineno"> 3486</span>&#160;            Status = STATUS_SUCCESS;</div>
<div class="line"><a name="l03487"></a><span class="lineno"> 3487</span>&#160;        }</div>
<div class="line"><a name="l03488"></a><span class="lineno"> 3488</span>&#160;        <span class="keywordflow">if</span> (NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l03489"></a><span class="lineno"> 3489</span>&#160;            pwszLib = (LPWSTR)KeyFile.KeyInfo.Data;</div>
<div class="line"><a name="l03490"></a><span class="lineno"> 3490</span>&#160;            pwszLib[<a class="code" href="a00026.html#ab9a6e7c8c7a31497ad2aab59eccdbfe6">CCH_KL_LIBNAME</a> - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03491"></a><span class="lineno"> 3491</span>&#160; </div>
<div class="line"><a name="l03492"></a><span class="lineno"> 3492</span>&#160;        }</div>
<div class="line"><a name="l03493"></a><span class="lineno"> 3493</span>&#160; </div>
<div class="line"><a name="l03494"></a><span class="lineno"> 3494</span>&#160;<span class="preprocessor">#ifdef FE_IME</span></div>
<div class="line"><a name="l03495"></a><span class="lineno"> 3495</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03496"></a><span class="lineno"> 3496</span>&#160;<span class="comment">         * If the high word of wLayoutId is 0xE??? then this is an IME based</span></div>
<div class="line"><a name="l03497"></a><span class="lineno"> 3497</span>&#160;<span class="comment">         * keyboard layout.</span></div>
<div class="line"><a name="l03498"></a><span class="lineno"> 3498</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03499"></a><span class="lineno"> 3499</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="a00341.html#a9d87ba42d1eed654ee04b018be9ea0b4">IS_IME_KBDLAYOUT</a>(wLayoutId))</div>
<div class="line"><a name="l03500"></a><span class="lineno"> 3500</span>&#160;            wLayoutId = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)HIWORD(wLayoutId);</div>
<div class="line"><a name="l03501"></a><span class="lineno"> 3501</span>&#160;        <span class="keywordflow">else</span></div>
<div class="line"><a name="l03502"></a><span class="lineno"> 3502</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l03503"></a><span class="lineno"> 3503</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03504"></a><span class="lineno"> 3504</span>&#160;<span class="comment">         * If the high word of wLayoutId is non-null then read the &quot;Layout ID&quot; value.</span></div>
<div class="line"><a name="l03505"></a><span class="lineno"> 3505</span>&#160;<span class="comment">         * Layout IDs start at 1, increase sequentially and are unique.</span></div>
<div class="line"><a name="l03506"></a><span class="lineno"> 3506</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03507"></a><span class="lineno"> 3507</span>&#160;        <span class="keywordflow">if</span> (HIWORD(wLayoutId)) {</div>
<div class="line"><a name="l03508"></a><span class="lineno"> 3508</span>&#160;            RtlInitUnicodeString(&amp;UnicodeString, <a class="code" href="a00026.html#ad0b7e26330f88a9b5fe86c7cc329d2c4">szKLId</a>);</div>
<div class="line"><a name="l03509"></a><span class="lineno"> 3509</span>&#160; </div>
<div class="line"><a name="l03510"></a><span class="lineno"> 3510</span>&#160;            Status = NtQueryValueKey(hKey,</div>
<div class="line"><a name="l03511"></a><span class="lineno"> 3511</span>&#160;                    &amp;UnicodeString,</div>
<div class="line"><a name="l03512"></a><span class="lineno"> 3512</span>&#160;                    KeyValuePartialInformation,</div>
<div class="line"><a name="l03513"></a><span class="lineno"> 3513</span>&#160;                    &amp;KeyId,</div>
<div class="line"><a name="l03514"></a><span class="lineno"> 3514</span>&#160;                    <span class="keyword">sizeof</span>(KeyId),</div>
<div class="line"><a name="l03515"></a><span class="lineno"> 3515</span>&#160;                    &amp;cbSize);</div>
<div class="line"><a name="l03516"></a><span class="lineno"> 3516</span>&#160; </div>
<div class="line"><a name="l03517"></a><span class="lineno"> 3517</span>&#160;            <span class="keywordflow">if</span> (Status == STATUS_BUFFER_OVERFLOW) {</div>
<div class="line"><a name="l03518"></a><span class="lineno"> 3518</span>&#160;                <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;OpenKeyboardLayoutFile - Buffer overflow.&quot;</span>);</div>
<div class="line"><a name="l03519"></a><span class="lineno"> 3519</span>&#160;                Status = STATUS_SUCCESS;</div>
<div class="line"><a name="l03520"></a><span class="lineno"> 3520</span>&#160;            }</div>
<div class="line"><a name="l03521"></a><span class="lineno"> 3521</span>&#160;            <span class="keywordflow">if</span> (NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l03522"></a><span class="lineno"> 3522</span>&#160;                pwszId = (LPWSTR)KeyId.KeyInfo.Data;</div>
<div class="line"><a name="l03523"></a><span class="lineno"> 3523</span>&#160;                pwszId[<a class="code" href="a00026.html#a129c6ec17fae777c58c438effb08b90d">CCH_KL_ID</a> - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03524"></a><span class="lineno"> 3524</span>&#160;                wLayoutId = (wcstol(pwszId, NULL, 16) &amp; 0x0fff) | 0xf000;</div>
<div class="line"><a name="l03525"></a><span class="lineno"> 3525</span>&#160;            } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03526"></a><span class="lineno"> 3526</span>&#160;                wLayoutId = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)0xfffe ;    <span class="comment">// error in layout ID, load separately</span></div>
<div class="line"><a name="l03527"></a><span class="lineno"> 3527</span>&#160;            }</div>
<div class="line"><a name="l03528"></a><span class="lineno"> 3528</span>&#160;        }</div>
<div class="line"><a name="l03529"></a><span class="lineno"> 3529</span>&#160;        NtClose(hKey);</div>
<div class="line"><a name="l03530"></a><span class="lineno"> 3530</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03531"></a><span class="lineno"> 3531</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03532"></a><span class="lineno"> 3532</span>&#160;<span class="comment">         * This is a temporary case to allow booting the new multilingual user on top of a</span></div>
<div class="line"><a name="l03533"></a><span class="lineno"> 3533</span>&#160;<span class="comment">         * Daytona registry.</span></div>
<div class="line"><a name="l03534"></a><span class="lineno"> 3534</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03535"></a><span class="lineno"> 3535</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l03536"></a><span class="lineno"> 3536</span>&#160;<span class="comment">         * Get DLL name from the registry, load it, and get the entry point.</span></div>
<div class="line"><a name="l03537"></a><span class="lineno"> 3537</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l03538"></a><span class="lineno"> 3538</span>&#160;        pwszLib = NULL;</div>
<div class="line"><a name="l03539"></a><span class="lineno"> 3539</span>&#160;        RtlInitUnicodeString(&amp;UnicodeString,</div>
<div class="line"><a name="l03540"></a><span class="lineno"> 3540</span>&#160;                L<span class="stringliteral">&quot;\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Keyboard Layout&quot;</span>);</div>
<div class="line"><a name="l03541"></a><span class="lineno"> 3541</span>&#160;        InitializeObjectAttributes(&amp;OA, &amp;UnicodeString, OBJ_CASE_INSENSITIVE, NULL, NULL);</div>
<div class="line"><a name="l03542"></a><span class="lineno"> 3542</span>&#160; </div>
<div class="line"><a name="l03543"></a><span class="lineno"> 3543</span>&#160;        <span class="keywordflow">if</span> (NT_SUCCESS(NtOpenKey(&amp;hKey, KEY_READ, &amp;OA))) {</div>
<div class="line"><a name="l03544"></a><span class="lineno"> 3544</span>&#160;            RtlInitUnicodeString(&amp;UnicodeString, lpszKLName);</div>
<div class="line"><a name="l03545"></a><span class="lineno"> 3545</span>&#160; </div>
<div class="line"><a name="l03546"></a><span class="lineno"> 3546</span>&#160;            Status = NtQueryValueKey(hKey,</div>
<div class="line"><a name="l03547"></a><span class="lineno"> 3547</span>&#160;                    &amp;UnicodeString,</div>
<div class="line"><a name="l03548"></a><span class="lineno"> 3548</span>&#160;                    KeyValuePartialInformation,</div>
<div class="line"><a name="l03549"></a><span class="lineno"> 3549</span>&#160;                    &amp;KeyFile,</div>
<div class="line"><a name="l03550"></a><span class="lineno"> 3550</span>&#160;                    <span class="keyword">sizeof</span>(KeyFile),</div>
<div class="line"><a name="l03551"></a><span class="lineno"> 3551</span>&#160;                    &amp;cbSize);</div>
<div class="line"><a name="l03552"></a><span class="lineno"> 3552</span>&#160; </div>
<div class="line"><a name="l03553"></a><span class="lineno"> 3553</span>&#160;            <span class="keywordflow">if</span> (Status == STATUS_BUFFER_OVERFLOW) {</div>
<div class="line"><a name="l03554"></a><span class="lineno"> 3554</span>&#160;                <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;OpenKeyboardLayoutFile - Buffer overflow.&quot;</span>);</div>
<div class="line"><a name="l03555"></a><span class="lineno"> 3555</span>&#160;                Status = STATUS_SUCCESS;</div>
<div class="line"><a name="l03556"></a><span class="lineno"> 3556</span>&#160;            }</div>
<div class="line"><a name="l03557"></a><span class="lineno"> 3557</span>&#160;            <span class="keywordflow">if</span> (NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l03558"></a><span class="lineno"> 3558</span>&#160;                pwszLib = (LPWSTR)KeyFile.KeyInfo.Data;</div>
<div class="line"><a name="l03559"></a><span class="lineno"> 3559</span>&#160;                pwszLib[<a class="code" href="a00026.html#ab9a6e7c8c7a31497ad2aab59eccdbfe6">CCH_KL_LIBNAME</a> - 1] = L<span class="charliteral">&#39;\0&#39;</span>;</div>
<div class="line"><a name="l03560"></a><span class="lineno"> 3560</span>&#160;            }</div>
<div class="line"><a name="l03561"></a><span class="lineno"> 3561</span>&#160; </div>
<div class="line"><a name="l03562"></a><span class="lineno"> 3562</span>&#160;            NtClose(hKey);</div>
<div class="line"><a name="l03563"></a><span class="lineno"> 3563</span>&#160;        }</div>
<div class="line"><a name="l03564"></a><span class="lineno"> 3564</span>&#160;    }</div>
<div class="line"><a name="l03565"></a><span class="lineno"> 3565</span>&#160; </div>
<div class="line"><a name="l03566"></a><span class="lineno"> 3566</span>&#160;    *pKbdInputLocale = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)MAKELONG(LOWORD(wLanguageId),LOWORD(wLayoutId));</div>
<div class="line"><a name="l03567"></a><span class="lineno"> 3567</span>&#160; </div>
<div class="line"><a name="l03568"></a><span class="lineno"> 3568</span>&#160;    <span class="keywordflow">if</span> (pwszLib == NULL) {</div>
<div class="line"><a name="l03569"></a><span class="lineno"> 3569</span>&#160;        <span class="keywordflow">if</span> (uFlags &amp; KLF_INITTIME) {</div>
<div class="line"><a name="l03570"></a><span class="lineno"> 3570</span>&#160;            pwszLib = <a class="code" href="a00026.html#af9d5546ba0d4af57ff5515f14371a7f1">pwszKLLibSafety</a>;</div>
<div class="line"><a name="l03571"></a><span class="lineno"> 3571</span>&#160;            *pKbdInputLocale = <a class="code" href="a00026.html#a82f3484223376f86b3f6e2677fd23e0a">wKbdLocaleSafety</a>;</div>
<div class="line"><a name="l03572"></a><span class="lineno"> 3572</span>&#160;        } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03573"></a><span class="lineno"> 3573</span>&#160;            <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;no DLL name for %ws&quot;</span>, lpszKLName);</div>
<div class="line"><a name="l03574"></a><span class="lineno"> 3574</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03575"></a><span class="lineno"> 3575</span>&#160;        }</div>
<div class="line"><a name="l03576"></a><span class="lineno"> 3576</span>&#160;    }</div>
<div class="line"><a name="l03577"></a><span class="lineno"> 3577</span>&#160; </div>
<div class="line"><a name="l03578"></a><span class="lineno"> 3578</span>&#160;RetryLoad:</div>
<div class="line"><a name="l03579"></a><span class="lineno"> 3579</span>&#160;    hLibModule = LoadLibraryW(pwszLib);</div>
<div class="line"><a name="l03580"></a><span class="lineno"> 3580</span>&#160; </div>
<div class="line"><a name="l03581"></a><span class="lineno"> 3581</span>&#160;    <span class="keywordflow">if</span> (hLibModule == NULL) {</div>
<div class="line"><a name="l03582"></a><span class="lineno"> 3582</span>&#160;        <a class="code" href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;Keyboard Layout: cannot load %ws\n&quot;</span>, pwszLib);</div>
<div class="line"><a name="l03583"></a><span class="lineno"> 3583</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03584"></a><span class="lineno"> 3584</span>&#160;    }</div>
<div class="line"><a name="l03585"></a><span class="lineno"> 3585</span>&#160; </div>
<div class="line"><a name="l03586"></a><span class="lineno"> 3586</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03587"></a><span class="lineno"> 3587</span>&#160;<span class="comment">     * HACK Part 1!  Get the pointer to the layout table and</span></div>
<div class="line"><a name="l03588"></a><span class="lineno"> 3588</span>&#160;<span class="comment">     * change it to a virtual offset.  The server will then</span></div>
<div class="line"><a name="l03589"></a><span class="lineno"> 3589</span>&#160;<span class="comment">     * use this offset when poking through the file header to</span></div>
<div class="line"><a name="l03590"></a><span class="lineno"> 3590</span>&#160;<span class="comment">     * locate the table within the file.</span></div>
<div class="line"><a name="l03591"></a><span class="lineno"> 3591</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03592"></a><span class="lineno"> 3592</span>&#160;    pfn = (<a class="code" href="a00347.html#a6e6030f7dc50fba8bffa4e89f9328c85">PKBDTABLES</a>(*)())GetProcAddress(hLibModule, (LPCSTR)1);</div>
<div class="line"><a name="l03593"></a><span class="lineno"> 3593</span>&#160;    <span class="keywordflow">if</span> (pfn == NULL) {</div>
<div class="line"><a name="l03594"></a><span class="lineno"> 3594</span>&#160;        <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#afa5f32de88404289ec03cd2c0e61e94f">RIP_ERROR</a>, <span class="stringliteral">&quot;Keyboard Layout: cannot get proc addr&quot;</span>);</div>
<div class="line"><a name="l03595"></a><span class="lineno"> 3595</span>&#160;        <span class="keywordflow">if</span> ((uFlags &amp; KLF_INITTIME) &amp;&amp; (pwszLib != <a class="code" href="a00026.html#af9d5546ba0d4af57ff5515f14371a7f1">pwszKLLibSafety</a>)) {</div>
<div class="line"><a name="l03596"></a><span class="lineno"> 3596</span>&#160;            pwszLib = <a class="code" href="a00026.html#af9d5546ba0d4af57ff5515f14371a7f1">pwszKLLibSafety</a>;</div>
<div class="line"><a name="l03597"></a><span class="lineno"> 3597</span>&#160;            <span class="keywordflow">goto</span> RetryLoad;</div>
<div class="line"><a name="l03598"></a><span class="lineno"> 3598</span>&#160;        }</div>
<div class="line"><a name="l03599"></a><span class="lineno"> 3599</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03600"></a><span class="lineno"> 3600</span>&#160;    }</div>
<div class="line"><a name="l03601"></a><span class="lineno"> 3601</span>&#160;    *poffTable = (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)((PBYTE)pfn() - (PBYTE)hLibModule);</div>
<div class="line"><a name="l03602"></a><span class="lineno"> 3602</span>&#160; </div>
<div class="line"><a name="l03603"></a><span class="lineno"> 3603</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03604"></a><span class="lineno"> 3604</span>&#160;<span class="comment">     * Open the dll for read access.</span></div>
<div class="line"><a name="l03605"></a><span class="lineno"> 3605</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03606"></a><span class="lineno"> 3606</span>&#160;    GetModuleFileName(hLibModule, awchModName, <span class="keyword">sizeof</span>(awchModName));</div>
<div class="line"><a name="l03607"></a><span class="lineno"> 3607</span>&#160;    FreeLibrary(hLibModule);</div>
<div class="line"><a name="l03608"></a><span class="lineno"> 3608</span>&#160;    <span class="keywordflow">return</span> CreateFileW(</div>
<div class="line"><a name="l03609"></a><span class="lineno"> 3609</span>&#160;            awchModName,</div>
<div class="line"><a name="l03610"></a><span class="lineno"> 3610</span>&#160;            GENERIC_READ,</div>
<div class="line"><a name="l03611"></a><span class="lineno"> 3611</span>&#160;            FILE_SHARE_READ,</div>
<div class="line"><a name="l03612"></a><span class="lineno"> 3612</span>&#160;            NULL,</div>
<div class="line"><a name="l03613"></a><span class="lineno"> 3613</span>&#160;            OPEN_EXISTING,</div>
<div class="line"><a name="l03614"></a><span class="lineno"> 3614</span>&#160;            0,</div>
<div class="line"><a name="l03615"></a><span class="lineno"> 3615</span>&#160;            NULL);</div>
<div class="line"><a name="l03616"></a><span class="lineno"> 3616</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l00030">CCH_KL_ID</a>, <a class="el" href="a00026_source.html#l00029">CCH_KL_LIBNAME</a>, <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00341_source.html#l00045">IS_IME_KBDLAYOUT</a>, <a class="el" href="a00026_source.html#l03411">NSZKLKEY</a>, <a class="el" href="a00026_source.html#l00026">pwszKLLibSafety</a>, <a class="el" href="a00371_source.html#l00028">RIP_ERROR</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a>, <a class="el" href="a00371_source.html#l00131">RIPMSG0</a>, <a class="el" href="a00371_source.html#l00132">RIPMSG1</a>, <a class="el" href="a00026_source.html#l03409">szKLFile</a>, <a class="el" href="a00026_source.html#l03410">szKLId</a>, <a class="el" href="a00026_source.html#l03408">szKLKey</a>, <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a> , 以及 <a class="el" href="a00026_source.html#l00027">wKbdLocaleSafety</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l01787">CommonCreateWindowStation()</a>, <a class="el" href="a00026_source.html#l03628">LoadKeyboardLayoutEx()</a> , 以及 <a class="el" href="a00026_source.html#l03678">LoadKeyboardLayoutW()</a>.</p>

</div>
</div>
<a id="a2deb9e129153d02e34ffe3976d43f224"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2deb9e129153d02e34ffe3976d43f224">&#9670;&nbsp;</a></span>OpenWindowStationA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA OpenWindowStationA </td>
          <td>(</td>
          <td class="paramtype">LPSTR&#160;</td>
          <td class="paramname"><em>pwinsta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01943">1943</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01947"></a><span class="lineno"> 1947</span>&#160;{</div>
<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span>&#160;    UNICODE_STRING UnicodeString;</div>
<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span>&#160;    HWINSTA hwinsta;</div>
<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span>&#160; </div>
<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span>&#160;    <span class="keywordflow">if</span> (!RtlCreateUnicodeStringFromAsciiz(&amp;UnicodeString, pwinsta))</div>
<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span>&#160; </div>
<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span>&#160;    hwinsta = <a class="code" href="a00026.html#a28b722aaf4a4881ff619be64522129e1">CommonOpenWindowStation</a>(&amp;UnicodeString, fInherit, amRequest);</div>
<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span>&#160; </div>
<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span>&#160;    RtlFreeUnicodeString(&amp;UnicodeString);</div>
<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span>&#160; </div>
<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span>&#160;    <span class="keywordflow">return</span> hwinsta;</div>
<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01895">CommonOpenWindowStation()</a>.</p>

</div>
</div>
<a id="a88bf83ad0cf99d4468797ef5ed2d8207"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a88bf83ad0cf99d4468797ef5ed2d8207">&#9670;&nbsp;</a></span>OpenWindowStationW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWINSTA OpenWindowStationW </td>
          <td>(</td>
          <td class="paramtype">LPWSTR&#160;</td>
          <td class="paramname"><em>pwinsta</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fInherit</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">ACCESS_MASK&#160;</td>
          <td class="paramname"><em>amRequest</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01961">1961</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01965"></a><span class="lineno"> 1965</span>&#160;{</div>
<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span>&#160;    UNICODE_STRING strWinSta;</div>
<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span>&#160; </div>
<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span>&#160;    RtlInitUnicodeString(&amp;strWinSta, pwinsta);</div>
<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span>&#160; </div>
<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#a28b722aaf4a4881ff619be64522129e1">CommonOpenWindowStation</a>(&amp;strWinSta, fInherit, amRequest);</div>
<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l01895">CommonOpenWindowStation()</a>.</p>

</div>
</div>
<a id="a39badb2e0c794d4f7ea20420f89a3b88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a39badb2e0c794d4f7ea20420f89a3b88">&#9670;&nbsp;</a></span>PostQuitMessage()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VOID PostQuitMessage </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nExitCode</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02848">2848</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02850"></a><span class="lineno"> 2850</span>&#160;{</div>
<div class="line"><a name="l02851"></a><span class="lineno"> 2851</span>&#160;    <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(nExitCode, <a class="code" href="a00335.html#a17bb1ace0b43893492270b7c5a56976c">SFI__POSTQUITMESSAGE</a>);</div>
<div class="line"><a name="l02852"></a><span class="lineno"> 2852</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00020">SFI__POSTQUITMESSAGE</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00101_source.html#l00989">DialogBox2()</a>, <a class="el" href="a00959_source.html#l00128">FrameWndProc()</a> , 以及 <a class="el" href="a00959_source.html#l00048">WinMain()</a>.</p>

</div>
</div>
<a id="ad2cafbb080045c8a0de769d60b650767"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad2cafbb080045c8a0de769d60b650767">&#9670;&nbsp;</a></span>PrivateKDBreakPoint()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void PrivateKDBreakPoint </td>
          <td>(</td>
          <td class="paramtype">void&#160;</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03748">3748</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03748"></a><span class="lineno"> 3748</span>&#160;                               {</div>
<div class="line"><a name="l03749"></a><span class="lineno"> 3749</span>&#160;    <a class="code" href="a00362.html#a2d58b382ebfe303bf8c83fd956758754">NtUserBreak</a>();</div>
<div class="line"><a name="l03750"></a><span class="lineno"> 3750</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03220">NtUserBreak()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00584_source.html#l05659">Ikbp()</a>.</p>

</div>
</div>
<a id="a7a0f877b51caf12ba6afbafbdf6dfa88"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7a0f877b51caf12ba6afbafbdf6dfa88">&#9670;&nbsp;</a></span>RegisterClassWOWA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">ATOM WINAPI RegisterClassWOWA </td>
          <td>(</td>
          <td class="paramtype">WNDCLASSA *&#160;</td>
          <td class="paramname"><em>lpWndClass</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPDWORD&#160;</td>
          <td class="paramname"><em>pdwWOWstuff</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02183">2183</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02186"></a><span class="lineno"> 2186</span>&#160;{</div>
<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span>&#160;    WNDCLASSEXA wc;</div>
<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span>&#160; </div>
<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span>&#160;    memcpy(&amp;(wc.style), lpWndClass, <span class="keyword">sizeof</span>(WNDCLASSA));</div>
<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span>&#160;    wc.hIconSm = NULL;</div>
<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span>&#160;    wc.cbSize = <span class="keyword">sizeof</span>(WNDCLASSEXA);</div>
<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span>&#160; </div>
<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00257.html#a7c0acc91914e5c12695291fc37af2d6f">RegisterClassExWOWA</a>(&amp;wc, pdwWOWstuff, NULL, 0);</div>
<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00257.html#a7c0acc91914e5c12695291fc37af2d6f">RegisterClassExWOWA()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="afa2943a7c5da1891776bf86e04f91483"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afa2943a7c5da1891776bf86e04f91483">&#9670;&nbsp;</a></span>RegisterLogonProcess()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL RegisterLogonProcess </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwProcessId</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fSecure</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03739">3739</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03742"></a><span class="lineno"> 3742</span>&#160;{</div>
<div class="line"><a name="l03743"></a><span class="lineno"> 3743</span>&#160;    <a class="code" href="a00026.html#a5d3ce9a9c27f144a237797121474dbee">gfLogonProcess</a> = <a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>(dwProcessId, fSecure,</div>
<div class="line"><a name="l03744"></a><span class="lineno"> 3744</span>&#160;            <a class="code" href="a00335.html#a418ea2b595cdbc241b62a388e2dcf50b">SFI__REGISTERLOGONPROCESS</a>);</div>
<div class="line"><a name="l03745"></a><span class="lineno"> 3745</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00026.html#a5d3ce9a9c27f144a237797121474dbee">gfLogonProcess</a>;</div>
<div class="line"><a name="l03746"></a><span class="lineno"> 3746</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00026_source.html#l00032">gfLogonProcess</a>, <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00021">SFI__REGISTERLOGONPROCESS</a>.</p>

</div>
</div>
<a id="a51ffa6a54cfc270dd5ee7bfead952b67"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a51ffa6a54cfc270dd5ee7bfead952b67">&#9670;&nbsp;</a></span>RegisterShellHookWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL RegisterShellHookWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03069">3069</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03071"></a><span class="lineno"> 3071</span>&#160;{</div>
<div class="line"><a name="l03072"></a><span class="lineno"> 3072</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a8f3ab19504904b931b9511a403b28f3a">NtUserCallHwnd</a>(hwnd, <a class="code" href="a00335.html#a51e678f2f093e2a3b8a82294784fdead">SFI__REGISTERSHELLHOOKWINDOW</a>);</div>
<div class="line"><a name="l03073"></a><span class="lineno"> 3073</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03284">NtUserCallHwnd()</a> , 以及 <a class="el" href="a00335_source.html#l00064">SFI__REGISTERSHELLHOOKWINDOW</a>.</p>

</div>
</div>
<a id="a985e054574b6423714fbb891a3245af8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a985e054574b6423714fbb891a3245af8">&#9670;&nbsp;</a></span>RegisterSystemThread()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VOID RegisterSystemThread </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwReserved</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02898">2898</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02900"></a><span class="lineno"> 2900</span>&#160;{</div>
<div class="line"><a name="l02901"></a><span class="lineno"> 2901</span>&#160;    <a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>(dwFlags, dwReserved, <a class="code" href="a00335.html#ac7cf3acf1f797c86a49cb4d6388b85ad">SFI__REGISTERSYSTEMTHREAD</a>);</div>
<div class="line"><a name="l02902"></a><span class="lineno"> 2902</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00059">SFI__REGISTERSYSTEMTHREAD</a>.</p>

</div>
</div>
<a id="a72f4722e49f0e9590c8abe8395d82c17"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a72f4722e49f0e9590c8abe8395d82c17">&#9670;&nbsp;</a></span>RegisterUserHungAppHandlers()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL RegisterUserHungAppHandlers </td>
          <td>(</td>
          <td class="paramtype">PFNW32ET&#160;</td>
          <td class="paramname"><em>pfnW32EndTask</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hEventWowExec</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02860">2860</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02863"></a><span class="lineno"> 2863</span>&#160;{</div>
<div class="line"><a name="l02864"></a><span class="lineno"> 2864</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)pfnW32EndTask,</div>
<div class="line"><a name="l02865"></a><span class="lineno"> 2865</span>&#160;                                    (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hEventWowExec,</div>
<div class="line"><a name="l02866"></a><span class="lineno"> 2866</span>&#160;                                    <a class="code" href="a00335.html#a2666a58866df7656a88500718837ddf5">SFI_XXXREGISTERUSERHUNGAPPHANDLERS</a>);</div>
<div class="line"><a name="l02867"></a><span class="lineno"> 2867</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00050">SFI_XXXREGISTERUSERHUNGAPPHANDLERS</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="a4d54aeecb59d707aa9ef66e7ecb702fd"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4d54aeecb59d707aa9ef66e7ecb702fd">&#9670;&nbsp;</a></span>ReleaseCapture()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL ReleaseCapture </td>
          <td>(</td>
          <td class="paramname"></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02875">2875</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02876"></a><span class="lineno"> 2876</span>&#160;{</div>
<div class="line"><a name="l02877"></a><span class="lineno"> 2877</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#ab64eb963b74811908a5b9bc99d77b8ac">NtUserCallNoParam</a>(<a class="code" href="a00335.html#a645eb7af69b69bce5096b81d6c58c2b0">SFI_XXXRELEASECAPTURE</a>);</div>
<div class="line"><a name="l02878"></a><span class="lineno"> 2878</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03204">NtUserCallNoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00022">SFI_XXXRELEASECAPTURE</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00317_source.html#l00981">SKC1ButtonUp()</a> , 以及 <a class="el" href="a00320_source.html#l00782">SKT1ButtonUp()</a>.</p>

</div>
</div>
<a id="ae35231899b6d8b4a5e8d23b23b458104"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae35231899b6d8b4a5e8d23b23b458104">&#9670;&nbsp;</a></span>ReleaseDC()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI ReleaseDC </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00885">885</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00888"></a><span class="lineno">  888</span>&#160;{</div>
<div class="line"><a name="l00889"></a><span class="lineno">  889</span>&#160; </div>
<div class="line"><a name="l00890"></a><span class="lineno">  890</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00891"></a><span class="lineno">  891</span>&#160;<span class="comment">     * NOTE: This is a smart stub that calls _ReleaseDC so there is</span></div>
<div class="line"><a name="l00892"></a><span class="lineno">  892</span>&#160;<span class="comment">     * no need for a separate ReleaseDC layer or client-server stub.</span></div>
<div class="line"><a name="l00893"></a><span class="lineno">  893</span>&#160;<span class="comment">     * _ReleaseDC has simpler layer and client-server stubs since the</span></div>
<div class="line"><a name="l00894"></a><span class="lineno">  894</span>&#160;<span class="comment">     * hwnd can be ignored.</span></div>
<div class="line"><a name="l00895"></a><span class="lineno">  895</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00896"></a><span class="lineno">  896</span>&#160; </div>
<div class="line"><a name="l00897"></a><span class="lineno">  897</span>&#160;    UNREFERENCED_PARAMETER(hwnd);</div>
<div class="line"><a name="l00898"></a><span class="lineno">  898</span>&#160; </div>
<div class="line"><a name="l00899"></a><span class="lineno">  899</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00900"></a><span class="lineno">  900</span>&#160;<span class="comment">     * Translate the handle.</span></div>
<div class="line"><a name="l00901"></a><span class="lineno">  901</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00902"></a><span class="lineno">  902</span>&#160;    FIXUP_HANDLE(hdc);</div>
<div class="line"><a name="l00903"></a><span class="lineno">  903</span>&#160;    <span class="keywordflow">if</span> (hdc == NULL)</div>
<div class="line"><a name="l00904"></a><span class="lineno">  904</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l00905"></a><span class="lineno">  905</span>&#160; </div>
<div class="line"><a name="l00906"></a><span class="lineno">  906</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hdc, <a class="code" href="a00335.html#a9ef21632e5aec277e7bddba6c3756638">SFI__RELEASEDC</a>);</div>
<div class="line"><a name="l00907"></a><span class="lineno">  907</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00023">SFI__RELEASEDC</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00944_source.html#l00170">_ReleaseDC()</a>, <a class="el" href="a00005_source.html#l00289">BNReleaseDC()</a>, <a class="el" href="a00185_source.html#l00060">ChopText()</a>, <a class="el" href="a00953_source.html#l01055">ClearDlg()</a>, <a class="el" href="a00317_source.html#l00352">CreateC1Window()</a>, <a class="el" href="a00125_source.html#l01922">ECReleaseEditDC()</a>, <a class="el" href="a00122_source.html#l00574">ECSetFont()</a>, <a class="el" href="a00323_source.html#l00063">GetSoftKeyboardDimension()</a>, <a class="el" href="a00320_source.html#l00220">InitSKT1Bitmap()</a>, <a class="el" href="a00320_source.html#l00047">InitSKT1ButtonPos()</a>, <a class="el" href="a00317_source.html#l00786">SKC1ButtonDown()</a>, <a class="el" href="a00317_source.html#l00981">SKC1ButtonUp()</a>, <a class="el" href="a00317_source.html#l00914">SKC1MouseMove()</a>, <a class="el" href="a00320_source.html#l00443">SKT1InvertButton()</a>, <a class="el" href="a00317_source.html#l01106">SKWndProcC1()</a>, <a class="el" href="a00320_source.html#l00948">SKWndProcT1()</a>, <a class="el" href="a00317_source.html#l00499">UpdateSKC1Window()</a> , 以及 <a class="el" href="a00320_source.html#l00874">UpdateSKT1Bitmap()</a>.</p>

</div>
</div>
<a id="a2d4538cf91b620d726b371b191d26023"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a2d4538cf91b620d726b371b191d26023">&#9670;&nbsp;</a></span>ReleaseEditDS()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">VOID ReleaseEditDS </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>h</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02362">2362</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02364"></a><span class="lineno"> 2364</span>&#160;{</div>
<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(<a class="code" href="a00020.html#afc201f87e78a533219c78af8c97ce005">pfn16GlobalFree</a> != NULL);</div>
<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span>&#160; </div>
<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span>&#160;    (*pfn16GlobalFree)(LOWORD(h));</div>
<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00020_source.html#l00137">pfn16GlobalFree</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00101_source.html#l00446">DefDlgProcWorker()</a>.</p>

</div>
</div>
<a id="a9f9a4912ec70c118432d7e55bac1d8d6"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a9f9a4912ec70c118432d7e55bac1d8d6">&#9670;&nbsp;</a></span>ReplyMessage()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL ReplyMessage </td>
          <td>(</td>
          <td class="paramtype">LONG&#160;</td>
          <td class="paramname"><em>pp1</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02886">2886</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02888"></a><span class="lineno"> 2888</span>&#160;{</div>
<div class="line"><a name="l02889"></a><span class="lineno"> 2889</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(pp1, <a class="code" href="a00335.html#a1ba99d2657ad5b948d2673e98120301a">SFI__REPLYMESSAGE</a>);</div>
<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00024">SFI__REPLYMESSAGE</a>.</p>

</div>
</div>
<a id="a54fe797d3bdb1ef1c5b0fad7204107d7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a54fe797d3bdb1ef1c5b0fad7204107d7">&#9670;&nbsp;</a></span>ScrollDC()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI ScrollDC </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hDC</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>dx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>dy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CONST RECT *&#160;</td>
          <td class="paramname"><em>lprcScroll</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CONST RECT *&#160;</td>
          <td class="paramname"><em>lprcClip</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hrgnUpdate</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPRECT&#160;</td>
          <td class="paramname"><em>lprcUpdate</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01007">1007</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01016"></a><span class="lineno"> 1016</span>&#160;{</div>
<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span>&#160;    <span class="keywordflow">if</span> (hrgnUpdate != NULL) {</div>
<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span>&#160;        FIXUP_HANDLE(hrgnUpdate);</div>
<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span>&#160;        <span class="keywordflow">if</span> (hrgnUpdate == NULL)</div>
<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span>&#160;    }</div>
<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span>&#160; </div>
<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span>&#160;    FIXUP_HANDLE(hDC);</div>
<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span>&#160;    <span class="keywordflow">if</span> (hDC == NULL)</div>
<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span>&#160; </div>
<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span>&#160;<span class="comment">     * If we&#39;re not scrolling, just empty the update region and return.</span></div>
<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span>&#160;    <span class="keywordflow">if</span> (dx == 0 &amp;&amp; dy == 0) {</div>
<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span>&#160;        <span class="keywordflow">if</span> (hrgnUpdate)</div>
<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span>&#160;            SetRectRgn(hrgnUpdate, 0, 0, 0, 0);</div>
<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span>&#160;        <span class="keywordflow">if</span> (lprcUpdate)</div>
<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span>&#160;            <a class="code" href="a00935.html#a6f9d1e9b327899127c080496900d48d9">SetRectEmpty</a>(lprcUpdate);</div>
<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span>&#160;        <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span>&#160;    }</div>
<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span>&#160; </div>
<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a56e26ea1aa0f35eac3ed483a63599719">NtUserScrollDC</a>(hDC, dx, dy, lprcScroll, lprcClip,</div>
<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span>&#160;            hrgnUpdate, lprcUpdate);</div>
<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00362.html#a56e26ea1aa0f35eac3ed483a63599719">NtUserScrollDC()</a> , 以及 <a class="el" href="a00935_source.html#l00414">SetRectEmpty()</a>.</p>

</div>
</div>
<a id="a7f703776b6aae0ac60ad5c80821cf4a7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7f703776b6aae0ac60ad5c80821cf4a7">&#9670;&nbsp;</a></span>ScrollWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI ScrollWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>dx</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>dy</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CONST RECT *&#160;</td>
          <td class="paramname"><em>prcScroll</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CONST RECT *&#160;</td>
          <td class="paramname"><em>prcClip</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01283">1283</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01289"></a><span class="lineno"> 1289</span>&#160;{</div>
<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#ab79fb1908c7da8bfc42396a59d16eb20">NtUserScrollWindowEx</a>(</div>
<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span>&#160;            hwnd,</div>
<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span>&#160;            dx,</div>
<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span>&#160;            dy,</div>
<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span>&#160;            prcScroll,</div>
<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span>&#160;            prcClip,</div>
<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span>&#160;            NULL,</div>
<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span>&#160;            NULL,</div>
<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span>&#160;            HIWORD(prcScroll) == 0 ? <a class="code" href="a00026.html#afab2ba434c2e8270eede610539dee8b9">SW_FLAG_RC</a> : <a class="code" href="a00026.html#a246cef21d8f236cea2d990af9baf5772">SW_FLAG_NRC</a>) != ERROR;</div>
<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00362.html#ab79fb1908c7da8bfc42396a59d16eb20">NtUserScrollWindowEx()</a>, <a class="el" href="a00026_source.html#l01280">SW_FLAG_NRC</a> , 以及 <a class="el" href="a00026_source.html#l01279">SW_FLAG_RC</a>.</p>

</div>
</div>
<a id="a4566eba1693a79dc637fc7d0eafb1d14"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a4566eba1693a79dc637fc7d0eafb1d14">&#9670;&nbsp;</a></span>SetCaretBlinkTime()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetCaretBlinkTime </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wMSeconds</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02910">2910</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02912"></a><span class="lineno"> 2912</span>&#160;{</div>
<div class="line"><a name="l02913"></a><span class="lineno"> 2913</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(wMSeconds, <a class="code" href="a00335.html#a2007f3256942a03c901ca04db32bfade">SFI__SETCARETBLINKTIME</a>);</div>
<div class="line"><a name="l02914"></a><span class="lineno"> 2914</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00025">SFI__SETCARETBLINKTIME</a>.</p>

</div>
</div>
<a id="a7902ce7caf9b8212820719461101f3d1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7902ce7caf9b8212820719461101f3d1">&#9670;&nbsp;</a></span>SetCaretPos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetCaretPos </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>Y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02922">2922</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02925"></a><span class="lineno"> 2925</span>&#160;{</div>
<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>(X, Y, <a class="code" href="a00335.html#af798c4ee5616d0de9e396ffb72e44ec7">SFI__SETCARETPOS</a>);</div>
<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00026">SFI__SETCARETPOS</a>.</p>

</div>
</div>
<a id="a058d192a0c32454f80d8926c79b6573e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a058d192a0c32454f80d8926c79b6573e">&#9670;&nbsp;</a></span>SetClipboardData()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE WINAPI SetClipboardData </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wFmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hMem</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00713">713</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00716"></a><span class="lineno">  716</span>&#160;{</div>
<div class="line"><a name="l00717"></a><span class="lineno">  717</span>&#160;    <a class="code" href="a01793.html">PHANDLENODE</a>  phnNew;</div>
<div class="line"><a name="l00718"></a><span class="lineno">  718</span>&#160;    HANDLE       hServer = NULL;</div>
<div class="line"><a name="l00719"></a><span class="lineno">  719</span>&#160;    <a class="code" href="a02533.html">SETCLIPBDATA</a> scd;</div>
<div class="line"><a name="l00720"></a><span class="lineno">  720</span>&#160;    BOOL         fGlobalHandle = FALSE;</div>
<div class="line"><a name="l00721"></a><span class="lineno">  721</span>&#160; </div>
<div class="line"><a name="l00722"></a><span class="lineno">  722</span>&#160;    <span class="keywordflow">if</span> (hMem != NULL) {</div>
<div class="line"><a name="l00723"></a><span class="lineno">  723</span>&#160; </div>
<div class="line"><a name="l00724"></a><span class="lineno">  724</span>&#160;        <span class="keywordflow">switch</span>(wFmt) {</div>
<div class="line"><a name="l00725"></a><span class="lineno">  725</span>&#160; </div>
<div class="line"><a name="l00726"></a><span class="lineno">  726</span>&#160;            <span class="keywordflow">case</span> CF_BITMAP:</div>
<div class="line"><a name="l00727"></a><span class="lineno">  727</span>&#160;            <span class="keywordflow">case</span> CF_DSPBITMAP:</div>
<div class="line"><a name="l00728"></a><span class="lineno">  728</span>&#160;            <span class="keywordflow">case</span> CF_PALETTE:</div>
<div class="line"><a name="l00729"></a><span class="lineno">  729</span>&#160;                FIXUP_HANDLE(hMem);</div>
<div class="line"><a name="l00730"></a><span class="lineno">  730</span>&#160;                hServer = hMem;</div>
<div class="line"><a name="l00731"></a><span class="lineno">  731</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00732"></a><span class="lineno">  732</span>&#160; </div>
<div class="line"><a name="l00733"></a><span class="lineno">  733</span>&#160;            <span class="keywordflow">case</span> CF_METAFILEPICT:</div>
<div class="line"><a name="l00734"></a><span class="lineno">  734</span>&#160;            <span class="keywordflow">case</span> CF_DSPMETAFILEPICT:</div>
<div class="line"><a name="l00735"></a><span class="lineno">  735</span>&#160;                hServer = GdiConvertMetaFilePict(hMem);</div>
<div class="line"><a name="l00736"></a><span class="lineno">  736</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00737"></a><span class="lineno">  737</span>&#160; </div>
<div class="line"><a name="l00738"></a><span class="lineno">  738</span>&#160;            <span class="keywordflow">case</span> CF_ENHMETAFILE:</div>
<div class="line"><a name="l00739"></a><span class="lineno">  739</span>&#160;            <span class="keywordflow">case</span> CF_DSPENHMETAFILE:</div>
<div class="line"><a name="l00740"></a><span class="lineno">  740</span>&#160;                hServer = GdiConvertEnhMetaFile(hMem);</div>
<div class="line"><a name="l00741"></a><span class="lineno">  741</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00742"></a><span class="lineno">  742</span>&#160; </div>
<div class="line"><a name="l00743"></a><span class="lineno">  743</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l00744"></a><span class="lineno">  744</span>&#160;<span class="comment">             * Must have a valid hMem (GlobalHandle)</span></div>
<div class="line"><a name="l00745"></a><span class="lineno">  745</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l00746"></a><span class="lineno">  746</span>&#160;            <span class="keywordflow">case</span> CF_TEXT:</div>
<div class="line"><a name="l00747"></a><span class="lineno">  747</span>&#160;            <span class="keywordflow">case</span> CF_OEMTEXT:</div>
<div class="line"><a name="l00748"></a><span class="lineno">  748</span>&#160;            <span class="keywordflow">case</span> CF_LOCALE:</div>
<div class="line"><a name="l00749"></a><span class="lineno">  749</span>&#160;            <span class="keywordflow">case</span> CF_DSPTEXT:</div>
<div class="line"><a name="l00750"></a><span class="lineno">  750</span>&#160;                hServer = <a class="code" href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a>(hMem, 1);</div>
<div class="line"><a name="l00751"></a><span class="lineno">  751</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00752"></a><span class="lineno">  752</span>&#160; </div>
<div class="line"><a name="l00753"></a><span class="lineno">  753</span>&#160;            <span class="keywordflow">case</span> CF_UNICODETEXT:</div>
<div class="line"><a name="l00754"></a><span class="lineno">  754</span>&#160;                hServer = <a class="code" href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a>(hMem, 2);</div>
<div class="line"><a name="l00755"></a><span class="lineno">  755</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00756"></a><span class="lineno">  756</span>&#160; </div>
<div class="line"><a name="l00757"></a><span class="lineno">  757</span>&#160;            <span class="keywordflow">case</span> CF_DIB:</div>
<div class="line"><a name="l00758"></a><span class="lineno">  758</span>&#160;                hServer = <a class="code" href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a>(hMem, 0);</div>
<div class="line"><a name="l00759"></a><span class="lineno">  759</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00760"></a><span class="lineno">  760</span>&#160; </div>
<div class="line"><a name="l00761"></a><span class="lineno">  761</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l00762"></a><span class="lineno">  762</span>&#160;<span class="comment">             * hMem should have been NULL but Write sends non-null when told</span></div>
<div class="line"><a name="l00763"></a><span class="lineno">  763</span>&#160;<span class="comment">             * to render</span></div>
<div class="line"><a name="l00764"></a><span class="lineno">  764</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l00765"></a><span class="lineno">  765</span>&#160;            <span class="keywordflow">case</span> CF_OWNERDISPLAY:</div>
<div class="line"><a name="l00766"></a><span class="lineno">  766</span>&#160;                <span class="comment">// Fall Through;</span></div>
<div class="line"><a name="l00767"></a><span class="lineno">  767</span>&#160; </div>
<div class="line"><a name="l00768"></a><span class="lineno">  768</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l00769"></a><span class="lineno">  769</span>&#160;<span class="comment">             * May have an hMem (GlobalHandle) or may be private handle\info</span></div>
<div class="line"><a name="l00770"></a><span class="lineno">  770</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l00771"></a><span class="lineno">  771</span>&#160;            <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00772"></a><span class="lineno">  772</span>&#160;                <span class="keywordflow">if</span> (GlobalFlags(hMem) == GMEM_INVALID_HANDLE) {</div>
<div class="line"><a name="l00773"></a><span class="lineno">  773</span>&#160;                    hServer = hMem;    <span class="comment">// No server equivalent; private data</span></div>
<div class="line"><a name="l00774"></a><span class="lineno">  774</span>&#160;                    <span class="keywordflow">goto</span> SCD_AFTERNULLCHECK;</div>
<div class="line"><a name="l00775"></a><span class="lineno">  775</span>&#160;                } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l00776"></a><span class="lineno">  776</span>&#160;                    fGlobalHandle = TRUE;</div>
<div class="line"><a name="l00777"></a><span class="lineno">  777</span>&#160;                    hServer = <a class="code" href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a>(hMem, 0);</div>
<div class="line"><a name="l00778"></a><span class="lineno">  778</span>&#160;                }</div>
<div class="line"><a name="l00779"></a><span class="lineno">  779</span>&#160;                <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00780"></a><span class="lineno">  780</span>&#160;        }</div>
<div class="line"><a name="l00781"></a><span class="lineno">  781</span>&#160; </div>
<div class="line"><a name="l00782"></a><span class="lineno">  782</span>&#160;        <span class="keywordflow">if</span> (hServer == NULL) {</div>
<div class="line"><a name="l00783"></a><span class="lineno">  783</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l00784"></a><span class="lineno">  784</span>&#160;<span class="comment">             * Something bad happened, gdi didn&#39;t give us back a</span></div>
<div class="line"><a name="l00785"></a><span class="lineno">  785</span>&#160;<span class="comment">             * handle. Since gdi has logged the error, we&#39;ll just</span></div>
<div class="line"><a name="l00786"></a><span class="lineno">  786</span>&#160;<span class="comment">             * clean up and return an error.</span></div>
<div class="line"><a name="l00787"></a><span class="lineno">  787</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l00788"></a><span class="lineno">  788</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00789"></a><span class="lineno">  789</span>&#160;        }</div>
<div class="line"><a name="l00790"></a><span class="lineno">  790</span>&#160;    }</div>
<div class="line"><a name="l00791"></a><span class="lineno">  791</span>&#160; </div>
<div class="line"><a name="l00792"></a><span class="lineno">  792</span>&#160;SCD_AFTERNULLCHECK:</div>
<div class="line"><a name="l00793"></a><span class="lineno">  793</span>&#160; </div>
<div class="line"><a name="l00794"></a><span class="lineno">  794</span>&#160;    RtlEnterCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00795"></a><span class="lineno">  795</span>&#160; </div>
<div class="line"><a name="l00796"></a><span class="lineno">  796</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00797"></a><span class="lineno">  797</span>&#160;<span class="comment">     * Update the server if that is successfull update the client</span></div>
<div class="line"><a name="l00798"></a><span class="lineno">  798</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00799"></a><span class="lineno">  799</span>&#160;    scd.<a class="code" href="a02533.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a>    = fGlobalHandle;</div>
<div class="line"><a name="l00800"></a><span class="lineno">  800</span>&#160;    scd.<a class="code" href="a02533.html#a1245271e4507fcd19b5fa4a4c000bd3a">fIncSerialNumber</a> = TRUE;</div>
<div class="line"><a name="l00801"></a><span class="lineno">  801</span>&#160; </div>
<div class="line"><a name="l00802"></a><span class="lineno">  802</span>&#160;    <span class="keywordflow">if</span> (!<a class="code" href="a00362.html#ac6f3110cb4f124f07183cd4d9b763119">NtUserSetClipboardData</a>(wFmt, hServer, &amp;scd)) {</div>
<div class="line"><a name="l00803"></a><span class="lineno">  803</span>&#160;        RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00804"></a><span class="lineno">  804</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00805"></a><span class="lineno">  805</span>&#160;    }</div>
<div class="line"><a name="l00806"></a><span class="lineno">  806</span>&#160; </div>
<div class="line"><a name="l00807"></a><span class="lineno">  807</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00808"></a><span class="lineno">  808</span>&#160;<span class="comment">     * See if we already have a client handle of this type.  If so</span></div>
<div class="line"><a name="l00809"></a><span class="lineno">  809</span>&#160;<span class="comment">     * delete it.</span></div>
<div class="line"><a name="l00810"></a><span class="lineno">  810</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00811"></a><span class="lineno">  811</span>&#160;    phnNew = <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a>;</div>
<div class="line"><a name="l00812"></a><span class="lineno">  812</span>&#160;    <span class="keywordflow">while</span> (phnNew) {</div>
<div class="line"><a name="l00813"></a><span class="lineno">  813</span>&#160;        <span class="keywordflow">if</span> (phnNew-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a> == wFmt) {</div>
<div class="line"><a name="l00814"></a><span class="lineno">  814</span>&#160;            <span class="keywordflow">if</span> (phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a> != NULL) {</div>
<div class="line"><a name="l00815"></a><span class="lineno">  815</span>&#160;                <a class="code" href="a00026.html#af5361d8c9ee2d1ddd9b99a8e597ed6d6">DeleteClientClipboardHandle</a>(phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a>, phnNew-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a>);</div>
<div class="line"><a name="l00816"></a><span class="lineno">  816</span>&#160;                <span class="comment">/*</span></div>
<div class="line"><a name="l00817"></a><span class="lineno">  817</span>&#160;<span class="comment">                 * Notify WOW to clear its associated cached h16 for this format</span></div>
<div class="line"><a name="l00818"></a><span class="lineno">  818</span>&#160;<span class="comment">                 * so that OLE32 thunked calls, which bypass the WOW cache will work.</span></div>
<div class="line"><a name="l00819"></a><span class="lineno">  819</span>&#160;<span class="comment">                 */</span></div>
<div class="line"><a name="l00820"></a><span class="lineno">  820</span>&#160;                <span class="keywordflow">if</span> (<a class="code" href="a00020.html#a8ecd4816919d5cbc8021d828733d0aef">pfnWowCBStoreHandle</a>) {</div>
<div class="line"><a name="l00821"></a><span class="lineno">  821</span>&#160;                    <a class="code" href="a00020.html#a8ecd4816919d5cbc8021d828733d0aef">pfnWowCBStoreHandle</a>((WORD)wFmt, 0);</div>
<div class="line"><a name="l00822"></a><span class="lineno">  822</span>&#160;                }</div>
<div class="line"><a name="l00823"></a><span class="lineno">  823</span>&#160;            }</div>
<div class="line"><a name="l00824"></a><span class="lineno">  824</span>&#160;            <span class="keywordflow">break</span>;</div>
<div class="line"><a name="l00825"></a><span class="lineno">  825</span>&#160;        }</div>
<div class="line"><a name="l00826"></a><span class="lineno">  826</span>&#160; </div>
<div class="line"><a name="l00827"></a><span class="lineno">  827</span>&#160;        phnNew = phnNew-&gt;<a class="code" href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">pnext</a>;</div>
<div class="line"><a name="l00828"></a><span class="lineno">  828</span>&#160;    }</div>
<div class="line"><a name="l00829"></a><span class="lineno">  829</span>&#160; </div>
<div class="line"><a name="l00830"></a><span class="lineno">  830</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00831"></a><span class="lineno">  831</span>&#160;<span class="comment">     * If we aren&#39;t re-using an old client cache entry alloc a new one</span></div>
<div class="line"><a name="l00832"></a><span class="lineno">  832</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00833"></a><span class="lineno">  833</span>&#160;    <span class="keywordflow">if</span> (!phnNew) {</div>
<div class="line"><a name="l00834"></a><span class="lineno">  834</span>&#160;        phnNew = (<a class="code" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a>)LocalAlloc(LPTR, <span class="keyword">sizeof</span>(<a class="code" href="a01793.html">HANDLENODE</a>));</div>
<div class="line"><a name="l00835"></a><span class="lineno">  835</span>&#160; </div>
<div class="line"><a name="l00836"></a><span class="lineno">  836</span>&#160;        <span class="keywordflow">if</span> (phnNew == NULL) {</div>
<div class="line"><a name="l00837"></a><span class="lineno">  837</span>&#160;            <a class="code" href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a>(<a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;SetClipboardData: not enough memory\n&quot;</span>);</div>
<div class="line"><a name="l00838"></a><span class="lineno">  838</span>&#160; </div>
<div class="line"><a name="l00839"></a><span class="lineno">  839</span>&#160;            RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00840"></a><span class="lineno">  840</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l00841"></a><span class="lineno">  841</span>&#160;        }</div>
<div class="line"><a name="l00842"></a><span class="lineno">  842</span>&#160; </div>
<div class="line"><a name="l00843"></a><span class="lineno">  843</span>&#160;        <span class="comment">/*</span></div>
<div class="line"><a name="l00844"></a><span class="lineno">  844</span>&#160;<span class="comment">         * Link in the newly allocated cache entry</span></div>
<div class="line"><a name="l00845"></a><span class="lineno">  845</span>&#160;<span class="comment">         */</span></div>
<div class="line"><a name="l00846"></a><span class="lineno">  846</span>&#160;        phnNew-&gt;<a class="code" href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">pnext</a> = <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a>;</div>
<div class="line"><a name="l00847"></a><span class="lineno">  847</span>&#160;        <a class="code" href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a> = phnNew;</div>
<div class="line"><a name="l00848"></a><span class="lineno">  848</span>&#160;    }</div>
<div class="line"><a name="l00849"></a><span class="lineno">  849</span>&#160; </div>
<div class="line"><a name="l00850"></a><span class="lineno">  850</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#a64a5e949b57cf19f94cb99705571cb4f">handleServer</a>  = hServer;</div>
<div class="line"><a name="l00851"></a><span class="lineno">  851</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">handleClient</a>  = hMem;</div>
<div class="line"><a name="l00852"></a><span class="lineno">  852</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">fmt</a>           = wFmt;</div>
<div class="line"><a name="l00853"></a><span class="lineno">  853</span>&#160;    phnNew-&gt;<a class="code" href="a01793.html#ab7d6ab755a202c8facb089d6377ab9d7">fGlobalHandle</a> = fGlobalHandle;</div>
<div class="line"><a name="l00854"></a><span class="lineno">  854</span>&#160; </div>
<div class="line"><a name="l00855"></a><span class="lineno">  855</span>&#160;    RtlLeaveCriticalSection(&amp;<a class="code" href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a>);</div>
<div class="line"><a name="l00856"></a><span class="lineno">  856</span>&#160; </div>
<div class="line"><a name="l00857"></a><span class="lineno">  857</span>&#160;    <span class="keywordflow">return</span> hMem;</div>
<div class="line"><a name="l00858"></a><span class="lineno">  858</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l00219">ConvertMemHandle()</a>, <a class="el" href="a00026_source.html#l00222">DeleteClientClipboardHandle()</a>, <a class="el" href="a00026_source.html#l00210">_HANDLENODE::fGlobalHandle</a>, <a class="el" href="a00365_source.html#l01117">tagSETCLIPBDATA::fGlobalHandle</a>, <a class="el" href="a00365_source.html#l01118">tagSETCLIPBDATA::fIncSerialNumber</a>, <a class="el" href="a00026_source.html#l00207">_HANDLENODE::fmt</a>, <a class="el" href="a00020_source.html#l00097">gcsClipboard</a>, <a class="el" href="a00026_source.html#l00214">gphn</a>, <a class="el" href="a00026_source.html#l00209">_HANDLENODE::handleClient</a>, <a class="el" href="a00026_source.html#l00208">_HANDLENODE::handleServer</a>, <a class="el" href="a03614_source.html#l02452">NtUserSetClipboardData()</a>, <a class="el" href="a00020_source.html#l00142">pfnWowCBStoreHandle</a>, <a class="el" href="a00026_source.html#l00206">_HANDLENODE::pnext</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a> , 以及 <a class="el" href="a00371_source.html#l00131">RIPMSG0</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00125_source.html#l02100">ECCopy()</a> , 以及 <a class="el" href="a00953_source.html#l00167">ProfClipboardGroup()</a>.</p>

</div>
</div>
<a id="a349dd9f18e70d7cdeb933052b5445d6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a349dd9f18e70d7cdeb933052b5445d6e">&#9670;&nbsp;</a></span>SetCursorPos()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetCursorPos </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>X</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>Y</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02935">2935</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02938"></a><span class="lineno"> 2938</span>&#160;{</div>
<div class="line"><a name="l02939"></a><span class="lineno"> 2939</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>(X, Y, <a class="code" href="a00335.html#a57718972e40716ce0f5aa431b3ac4a53">SFI__SETCURSORPOS</a>);</div>
<div class="line"><a name="l02940"></a><span class="lineno"> 2940</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00027">SFI__SETCURSORPOS</a>.</p>

</div>
</div>
<a id="a990fc53bf57a2ce03ea38241c456e161"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a990fc53bf57a2ce03ea38241c456e161">&#9670;&nbsp;</a></span>SetDeskWallpaper()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetDeskWallpaper </td>
          <td>(</td>
          <td class="paramtype">IN LPCSTR pString&#160;</td>
          <td class="paramname"><em>OPTIONAL</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00867">867</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00869"></a><span class="lineno">  869</span>&#160;{</div>
<div class="line"><a name="l00870"></a><span class="lineno">  870</span>&#160;    <span class="keywordflow">return</span> SystemParametersInfoA(SPI_SETDESKWALLPAPER, 0, (PVOID)pString, TRUE);</div>
<div class="line"><a name="l00871"></a><span class="lineno">  871</span>&#160;}</div>
</div><!-- fragment -->
</div>
</div>
<a id="a52a5d2182b9b6cfa8311ca5ecc0c1aed"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a52a5d2182b9b6cfa8311ca5ecc0c1aed">&#9670;&nbsp;</a></span>SetDoubleClickTime()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetDoubleClickTime </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>cms</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02948">2948</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02950"></a><span class="lineno"> 2950</span>&#160;{</div>
<div class="line"><a name="l02951"></a><span class="lineno"> 2951</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(cms, <a class="code" href="a00335.html#a4e7f2435989de34d1ec2c7887be679b0">SFI__SETDOUBLECLICKTIME</a>);</div>
<div class="line"><a name="l02952"></a><span class="lineno"> 2952</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00029">SFI__SETDOUBLECLICKTIME</a>.</p>

</div>
</div>
<a id="a0427963300ccb73271752f9310fab5c8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0427963300ccb73271752f9310fab5c8">&#9670;&nbsp;</a></span>SetForegroundWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetForegroundWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02960">2960</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02962"></a><span class="lineno"> 2962</span>&#160;{</div>
<div class="line"><a name="l02963"></a><span class="lineno"> 2963</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#a96a1cfa70389ebc5bac9a3c8b1193883">SFI_XXXSETFOREGROUNDWINDOW</a>);</div>
<div class="line"><a name="l02964"></a><span class="lineno"> 2964</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a> , 以及 <a class="el" href="a00335_source.html#l00052">SFI_XXXSETFOREGROUNDWINDOW</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00947_source.html#l01464">BoostHardError()</a> , 以及 <a class="el" href="a03239_source.html#l00634">MySendEndSessionMessages()</a>.</p>

</div>
</div>
<a id="a1fb31171046bc7f3dac91763c69578e5"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1fb31171046bc7f3dac91763c69578e5">&#9670;&nbsp;</a></span>SetProgmanWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetProgmanWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02774">2774</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02776"></a><span class="lineno"> 2776</span>&#160;{</div>
<div class="line"><a name="l02777"></a><span class="lineno"> 2777</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a04cb7e946d3c8177afb71b96528654b7">NtUserCallHwndOpt</a>(hwnd, <a class="code" href="a00335.html#a4052624e3f410fad6d191edfc6f6df16">SFI__SETPROGMANWINDOW</a>);</div>
<div class="line"><a name="l02778"></a><span class="lineno"> 2778</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03331">NtUserCallHwndOpt()</a> , 以及 <a class="el" href="a00335_source.html#l00063">SFI__SETPROGMANWINDOW</a>.</p>

</div>
</div>
<a id="ad475ff16ddc2a6ed9d1946c1003e7513"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad475ff16ddc2a6ed9d1946c1003e7513">&#9670;&nbsp;</a></span>SetShellWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetShellWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02755">2755</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02755"></a><span class="lineno"> 2755</span>&#160;                                {</div>
<div class="line"><a name="l02756"></a><span class="lineno"> 2756</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a101b17b72b59c52a93bbf6835fed9fcb">NtUserSetShellWindowEx</a>(hwnd, hwnd);</div>
<div class="line"><a name="l02757"></a><span class="lineno"> 2757</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l01852">NtUserSetShellWindowEx()</a>.</p>

</div>
</div>
<a id="a517320a0a2fce6039db4239bf98bf42e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a517320a0a2fce6039db4239bf98bf42e">&#9670;&nbsp;</a></span>SetTaskmanWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetTaskmanWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02795">2795</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02797"></a><span class="lineno"> 2797</span>&#160;{</div>
<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a04cb7e946d3c8177afb71b96528654b7">NtUserCallHwndOpt</a>(hwnd, <a class="code" href="a00335.html#a33710f2df4e356cbee208568e2df2e0e">SFI__SETTASKMANWINDOW</a>);</div>
<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03331">NtUserCallHwndOpt()</a> , 以及 <a class="el" href="a00335_source.html#l00062">SFI__SETTASKMANWINDOW</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00041_source.html#l00555">DefWindowProcWorker()</a>.</p>

</div>
</div>
<a id="a7d99bc75fc4fddf957954271d0f1f54f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a7d99bc75fc4fddf957954271d0f1f54f">&#9670;&nbsp;</a></span>SetUserObjectSecurity()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetUserObjectSecurity </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hObject</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_INFORMATION&#160;</td>
          <td class="paramname"><em>pRequestedInformation</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PSECURITY_DESCRIPTOR&#160;</td>
          <td class="paramname"><em>pSecurityDescriptor</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01724">1724</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01728"></a><span class="lineno"> 1728</span>&#160;{</div>
<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span>&#160;    NTSTATUS Status;</div>
<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span>&#160; </div>
<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span>&#160;    Status = NtSetSecurityObject(hObject,</div>
<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span>&#160;                                 *pRequestedInformation,</div>
<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span>&#160;                                 pSecurityDescriptor);</div>
<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS(Status)) {</div>
<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span>&#160;        <a class="code" href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a>(Status, <a class="code" href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a>, <span class="stringliteral">&quot;&quot;</span>);</div>
<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span>&#160;    }</div>
<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span>&#160;    <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00371_source.html#l00030">RIP_VERBOSE</a> , 以及 <a class="el" href="a00371_source.html#l00125">RIPNTERR0</a>.</p>

</div>
</div>
<a id="af8e6a3ced4ab675fe7509248fa778247"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af8e6a3ced4ab675fe7509248fa778247">&#9670;&nbsp;</a></span>SetWindowContextHelpId()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SetWindowContextHelpId </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>id</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02807">2807</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02810"></a><span class="lineno"> 2810</span>&#160;{</div>
<div class="line"><a name="l02811"></a><span class="lineno"> 2811</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a4587e82182c73aeb97a7f528b5dfdaa0">NtUserCallHwndParam</a>(hwnd, <span class="keywordtype">id</span>, <a class="code" href="a00335.html#a2d17da853e2c31b9f23ca8eb24121472">SFI__SETWINDOWCONTEXTHELPID</a>);</div>
<div class="line"><a name="l02812"></a><span class="lineno"> 2812</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03370">NtUserCallHwndParam()</a> , 以及 <a class="el" href="a00335_source.html#l00061">SFI__SETWINDOWCONTEXTHELPID</a>.</p>

</div>
</div>
<a id="ab4added876586c5164dae9aaba3e7691"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab4added876586c5164dae9aaba3e7691">&#9670;&nbsp;</a></span>SetWindowState()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void SetWindowState </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a>&#160;</td>
          <td class="paramname"><em>pwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02826">2826</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02829"></a><span class="lineno"> 2829</span>&#160;{</div>
<div class="line"><a name="l02830"></a><span class="lineno"> 2830</span>&#160;    <span class="keywordflow">if</span> (TestWF(pwnd, flags) != LOBYTE(flags))</div>
<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span>&#160;        <a class="code" href="a00362.html#a4587e82182c73aeb97a7f528b5dfdaa0">NtUserCallHwndParam</a>(HWq(pwnd), flags, <a class="code" href="a00335.html#af879649bddfeaac7e49e891fff78a9b1">SFI_SETWINDOWSTATE</a>);</div>
<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03370">NtUserCallHwndParam()</a> , 以及 <a class="el" href="a00335_source.html#l00030">SFI_SETWINDOWSTATE</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00005_source.html#l01283">ButtonWndProcWorker()</a>, <a class="el" href="a00200_source.html#l00229">CalcClientScrolling()</a>, <a class="el" href="a00059_source.html#l00031">CBNcCreateHandler()</a>, <a class="el" href="a00101_source.html#l00446">DefDlgProcWorker()</a>, <a class="el" href="a00122_source.html#l00409">ECSetPasswordChar()</a>, <a class="el" href="a00125_source.html#l02302">EditWndProc()</a>, <a class="el" href="a00197_source.html#l00314">MDIRemoveSysMenu()</a> , 以及 <a class="el" href="a00248_source.html#l00794">StaticWndProcWorker()</a>.</p>

</div>
</div>
<a id="afdef4d6332f08210a2f6a559ceb1cdd9"></a>
<h2 class="memtitle"><span class="permalink"><a href="#afdef4d6332f08210a2f6a559ceb1cdd9">&#9670;&nbsp;</a></span>ShowCursor()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int ShowCursor </td>
          <td>(</td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>bShow</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02972">2972</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02974"></a><span class="lineno"> 2974</span>&#160;{</div>
<div class="line"><a name="l02975"></a><span class="lineno"> 2975</span>&#160;    <span class="keywordflow">return</span> (<span class="keywordtype">int</span>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(bShow, <a class="code" href="a00335.html#aecbd2d63d2ce71da261593c025b44aa3">SFI__SHOWCURSOR</a>);</div>
<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00031">SFI__SHOWCURSOR</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00953_source.html#l01694">StartDataCollector()</a>, <a class="el" href="a00953_source.html#l01774">StopDataCollector()</a> , 以及 <a class="el" href="a00959_source.html#l00048">WinMain()</a>.</p>

</div>
</div>
<a id="ae70bb6a5a2db15a103952cd36f152237"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae70bb6a5a2db15a103952cd36f152237">&#9670;&nbsp;</a></span>ShowOwnedPopups()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL ShowOwnedPopups </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fShow</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02984">2984</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02987"></a><span class="lineno"> 2987</span>&#160;{</div>
<div class="line"><a name="l02988"></a><span class="lineno"> 2988</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a>(hwnd, fShow,</div>
<div class="line"><a name="l02989"></a><span class="lineno"> 2989</span>&#160;                                         <a class="code" href="a00335.html#a41ce863ee77fba96a4353d0a5a4100d2">SFI_XXXSHOWOWNEDPOPUPS</a>);</div>
<div class="line"><a name="l02990"></a><span class="lineno"> 2990</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03394">NtUserCallHwndParamLock()</a> , 以及 <a class="el" href="a00335_source.html#l00055">SFI_XXXSHOWOWNEDPOPUPS</a>.</p>

</div>
</div>
<a id="a876991e2a4ea81c5139591fe08d9ba58"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a876991e2a4ea81c5139591fe08d9ba58">&#9670;&nbsp;</a></span>ShowStartGlass()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void ShowStartGlass </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwTimeout</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02998">2998</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03000"></a><span class="lineno"> 3000</span>&#160;{</div>
<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span>&#160;    <a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(dwTimeout, <a class="code" href="a00335.html#a364199824e27a5615224f6c0f07ea177">SFI__SHOWSTARTGLASS</a>);</div>
<div class="line"><a name="l03002"></a><span class="lineno"> 3002</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00032">SFI__SHOWSTARTGLASS</a>.</p>

</div>
</div>
<a id="a749b058b62d696966ab70f0114da060f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a749b058b62d696966ab70f0114da060f">&#9670;&nbsp;</a></span>SwapMouseButton()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL SwapMouseButton </td>
          <td>(</td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fSwap</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03010">3010</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03012"></a><span class="lineno"> 3012</span>&#160;{</div>
<div class="line"><a name="l03013"></a><span class="lineno"> 3013</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>(fSwap, <a class="code" href="a00335.html#a04c428bda8b4629a3ae053ee17cfab88">SFI__SWAPMOUSEBUTTON</a>);</div>
<div class="line"><a name="l03014"></a><span class="lineno"> 3014</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a> , 以及 <a class="el" href="a00335_source.html#l00033">SFI__SWAPMOUSEBUTTON</a>.</p>

</div>
</div>
<a id="af11d60bede87cb5b4feff1565e3755c7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af11d60bede87cb5b4feff1565e3755c7">&#9670;&nbsp;</a></span>SwitchToThisWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void WINAPI SwitchToThisWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fAltTab</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01307">1307</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01310"></a><span class="lineno"> 1310</span>&#160;{</div>
<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span>&#160;    (VOID)<a class="code" href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a>(hwnd, fAltTab, <a class="code" href="a00335.html#adad3a707c2e35ffb29e43af850ccdd15">SFI_XXXSWITCHTOTHISWINDOW</a>);</div>
<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03394">NtUserCallHwndParamLock()</a> , 以及 <a class="el" href="a00335_source.html#l00072">SFI_XXXSWITCHTOTHISWINDOW</a>.</p>

</div>
</div>
<a id="a61756453579de48a0ebb8986ee78a837"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a61756453579de48a0ebb8986ee78a837">&#9670;&nbsp;</a></span>TileChildWindows()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL TileChildWindows </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwndParent</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>flags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03022">3022</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03025"></a><span class="lineno"> 3025</span>&#160;{</div>
<div class="line"><a name="l03026"></a><span class="lineno"> 3026</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00200.html#a47a4c70a9495eab3183ca740118195f9">TileWindows</a>(hwndParent, flags, NULL, 0, NULL);</div>
<div class="line"><a name="l03027"></a><span class="lineno"> 3027</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00200_source.html#l00849">TileWindows()</a>.</p>

</div>
</div>
<a id="a5aee5ca8759f64eb8474e823a50a7318"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5aee5ca8759f64eb8474e823a50a7318">&#9670;&nbsp;</a></span>ToAscii()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI ToAscii </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wVirtKey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wScanCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PBYTE&#160;</td>
          <td class="paramname"><em>lpKeyState</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPWORD&#160;</td>
          <td class="paramname"><em>lpChar</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wFlags</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00910">910</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00917"></a><span class="lineno">  917</span>&#160;{</div>
<div class="line"><a name="l00918"></a><span class="lineno">  918</span>&#160;    WCHAR UnicodeChar[2];</div>
<div class="line"><a name="l00919"></a><span class="lineno">  919</span>&#160;    <span class="keywordtype">int</span> cch, retval;</div>
<div class="line"><a name="l00920"></a><span class="lineno">  920</span>&#160; </div>
<div class="line"><a name="l00921"></a><span class="lineno">  921</span>&#160;    retval = <a class="code" href="a03611.html#ac08320cb99ff87cc99ff553e36dc1616">ToUnicode</a>(wVirtKey, wScanCode, lpKeyState, UnicodeChar,2, wFlags);</div>
<div class="line"><a name="l00922"></a><span class="lineno">  922</span>&#160;    cch = (retval &lt; 0) ? -retval : retval;</div>
<div class="line"><a name="l00923"></a><span class="lineno">  923</span>&#160;    <span class="keywordflow">if</span> (cch != 0) {</div>
<div class="line"><a name="l00924"></a><span class="lineno">  924</span>&#160;        <span class="keywordflow">if</span> (!NT_SUCCESS(RtlUnicodeToMultiByteN(</div>
<div class="line"><a name="l00925"></a><span class="lineno">  925</span>&#160;                (LPSTR)lpChar,</div>
<div class="line"><a name="l00926"></a><span class="lineno">  926</span>&#160;                (ULONG) <span class="keyword">sizeof</span>(*lpChar),</div>
<div class="line"><a name="l00927"></a><span class="lineno">  927</span>&#160;                (PULONG)&amp;cch,</div>
<div class="line"><a name="l00928"></a><span class="lineno">  928</span>&#160;                UnicodeChar,</div>
<div class="line"><a name="l00929"></a><span class="lineno">  929</span>&#160;                cch * <span class="keyword">sizeof</span>(WCHAR)))) {</div>
<div class="line"><a name="l00930"></a><span class="lineno">  930</span>&#160;            <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00931"></a><span class="lineno">  931</span>&#160;        }</div>
<div class="line"><a name="l00932"></a><span class="lineno">  932</span>&#160;    }</div>
<div class="line"><a name="l00933"></a><span class="lineno">  933</span>&#160;    <span class="keywordflow">return</span> (retval &lt; 0) ? -cch : cch;</div>
<div class="line"><a name="l00934"></a><span class="lineno">  934</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l01101">ToUnicode()</a>.</p>

</div>
</div>
<a id="a14e612b936b7c1118f87699a34646921"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a14e612b936b7c1118f87699a34646921">&#9670;&nbsp;</a></span>ToAsciiEx()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI ToAsciiEx </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wVirtKey</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wScanCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">PBYTE&#160;</td>
          <td class="paramname"><em>lpKeyState</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPWORD&#160;</td>
          <td class="paramname"><em>lpChar</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>wFlags</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HKL&#160;</td>
          <td class="paramname"><em>hkl</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00940">940</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00948"></a><span class="lineno">  948</span>&#160;{</div>
<div class="line"><a name="l00949"></a><span class="lineno">  949</span>&#160;    WCHAR UnicodeChar[2];</div>
<div class="line"><a name="l00950"></a><span class="lineno">  950</span>&#160;    <span class="keywordtype">int</span> cch, retval;</div>
<div class="line"><a name="l00951"></a><span class="lineno">  951</span>&#160;    BOOL fUsedDefaultChar;</div>
<div class="line"><a name="l00952"></a><span class="lineno">  952</span>&#160; </div>
<div class="line"><a name="l00953"></a><span class="lineno">  953</span>&#160;    retval = <a class="code" href="a03611.html#ab36183158992940b36c1a43c4fe55179">ToUnicodeEx</a>(wVirtKey, wScanCode, lpKeyState, UnicodeChar,2, wFlags, hkl);</div>
<div class="line"><a name="l00954"></a><span class="lineno">  954</span>&#160;    cch = (retval &lt; 0) ? -retval : retval;</div>
<div class="line"><a name="l00955"></a><span class="lineno">  955</span>&#160;    <span class="keywordflow">if</span> (cch != 0) {</div>
<div class="line"><a name="l00956"></a><span class="lineno">  956</span>&#160;        <span class="keywordflow">if</span> (hkl != <a class="code" href="a00026.html#a0b9f32df129dc236ccddbb022b51842f">hCachedHKL</a>) {</div>
<div class="line"><a name="l00957"></a><span class="lineno">  957</span>&#160;            <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> dwCodePage;</div>
<div class="line"><a name="l00958"></a><span class="lineno">  958</span>&#160;            <span class="keywordflow">if</span> (!GetLocaleInfoW(</div>
<div class="line"><a name="l00959"></a><span class="lineno">  959</span>&#160;                     (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hkl &amp; 0xffff,</div>
<div class="line"><a name="l00960"></a><span class="lineno">  960</span>&#160;                     LOCALE_IDEFAULTANSICODEPAGE | LOCALE_RETURN_NUMBER,</div>
<div class="line"><a name="l00961"></a><span class="lineno">  961</span>&#160;                     (LPWSTR)&amp;dwCodePage,</div>
<div class="line"><a name="l00962"></a><span class="lineno">  962</span>&#160;                     <span class="keyword">sizeof</span>(dwCodePage) / <span class="keyword">sizeof</span>(WCHAR)</div>
<div class="line"><a name="l00963"></a><span class="lineno">  963</span>&#160;                     )) {</div>
<div class="line"><a name="l00964"></a><span class="lineno">  964</span>&#160;                <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00965"></a><span class="lineno">  965</span>&#160;            }</div>
<div class="line"><a name="l00966"></a><span class="lineno">  966</span>&#160;            <a class="code" href="a00026.html#ace44ba95256a8598283b551b22699143">uCachedCP</a> = dwCodePage;</div>
<div class="line"><a name="l00967"></a><span class="lineno">  967</span>&#160;            <a class="code" href="a00026.html#a0b9f32df129dc236ccddbb022b51842f">hCachedHKL</a> = hkl;</div>
<div class="line"><a name="l00968"></a><span class="lineno">  968</span>&#160;        }</div>
<div class="line"><a name="l00969"></a><span class="lineno">  969</span>&#160;        <span class="keywordflow">if</span> (!<a class="code" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a>(</div>
<div class="line"><a name="l00970"></a><span class="lineno">  970</span>&#160;                 <a class="code" href="a00026.html#ace44ba95256a8598283b551b22699143">uCachedCP</a>,</div>
<div class="line"><a name="l00971"></a><span class="lineno">  971</span>&#160;                 0,</div>
<div class="line"><a name="l00972"></a><span class="lineno">  972</span>&#160;                 UnicodeChar,</div>
<div class="line"><a name="l00973"></a><span class="lineno">  973</span>&#160;                 cch,</div>
<div class="line"><a name="l00974"></a><span class="lineno">  974</span>&#160;                 (LPSTR)lpChar,</div>
<div class="line"><a name="l00975"></a><span class="lineno">  975</span>&#160;                 <span class="keyword">sizeof</span>(*lpChar),</div>
<div class="line"><a name="l00976"></a><span class="lineno">  976</span>&#160;                 NULL,</div>
<div class="line"><a name="l00977"></a><span class="lineno">  977</span>&#160;                 &amp;fUsedDefaultChar)) {</div>
<div class="line"><a name="l00978"></a><span class="lineno">  978</span>&#160;            <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00979"></a><span class="lineno">  979</span>&#160;        }</div>
<div class="line"><a name="l00980"></a><span class="lineno">  980</span>&#160;    }</div>
<div class="line"><a name="l00981"></a><span class="lineno">  981</span>&#160;    <span class="keywordflow">return</span> (retval &lt; 0) ? -cch : cch;</div>
<div class="line"><a name="l00982"></a><span class="lineno">  982</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a00026_source.html#l00937">hCachedHKL</a>, <a class="el" href="a03611_source.html#l01128">ToUnicodeEx()</a>, <a class="el" href="a00026_source.html#l00936">uCachedCP</a> , 以及 <a class="el" href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a03287_source.html#l00086">ImmTranslateMessage()</a>.</p>

</div>
</div>
<a id="a69c249578f9e6bec733d175125fc5fb2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a69c249578f9e6bec733d175125fc5fb2">&#9670;&nbsp;</a></span>TranslateAcceleratorA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI TranslateAcceleratorA </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HACCEL&#160;</td>
          <td class="paramname"><em>hAccel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPMSG&#160;</td>
          <td class="paramname"><em>lpMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00162">162</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00166"></a><span class="lineno">  166</span>&#160;{</div>
<div class="line"><a name="l00167"></a><span class="lineno">  167</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> wParamT;</div>
<div class="line"><a name="l00168"></a><span class="lineno">  168</span>&#160;    <span class="keywordtype">int</span> iT;</div>
<div class="line"><a name="l00169"></a><span class="lineno">  169</span>&#160; </div>
<div class="line"><a name="l00170"></a><span class="lineno">  170</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00171"></a><span class="lineno">  171</span>&#160;<span class="comment">     * NULL pwnd is a valid case - since this is called from the center</span></div>
<div class="line"><a name="l00172"></a><span class="lineno">  172</span>&#160;<span class="comment">     * of main loops, pwnd == NULL happens all the time, and we shouldn&#39;t</span></div>
<div class="line"><a name="l00173"></a><span class="lineno">  173</span>&#160;<span class="comment">     * generate a warning because of it.</span></div>
<div class="line"><a name="l00174"></a><span class="lineno">  174</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00175"></a><span class="lineno">  175</span>&#160;    <span class="keywordflow">if</span> (hwnd == NULL)</div>
<div class="line"><a name="l00176"></a><span class="lineno">  176</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l00177"></a><span class="lineno">  177</span>&#160; </div>
<div class="line"><a name="l00178"></a><span class="lineno">  178</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00179"></a><span class="lineno">  179</span>&#160;<span class="comment">     * We only need to pass key-down messages to the server,</span></div>
<div class="line"><a name="l00180"></a><span class="lineno">  180</span>&#160;<span class="comment">     * everything else ends up returning 0/FALSE from this function.</span></div>
<div class="line"><a name="l00181"></a><span class="lineno">  181</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00182"></a><span class="lineno">  182</span>&#160;    <span class="keywordflow">switch</span> (lpMsg-&gt;message) {</div>
<div class="line"><a name="l00183"></a><span class="lineno">  183</span>&#160; </div>
<div class="line"><a name="l00184"></a><span class="lineno">  184</span>&#160;    <span class="keywordflow">case</span> WM_KEYDOWN:</div>
<div class="line"><a name="l00185"></a><span class="lineno">  185</span>&#160;    <span class="keywordflow">case</span> WM_SYSKEYDOWN:</div>
<div class="line"><a name="l00186"></a><span class="lineno">  186</span>&#160;    <span class="keywordflow">case</span> WM_CHAR:</div>
<div class="line"><a name="l00187"></a><span class="lineno">  187</span>&#160;    <span class="keywordflow">case</span> WM_SYSCHAR:</div>
<div class="line"><a name="l00188"></a><span class="lineno">  188</span>&#160;        wParamT = lpMsg-&gt;wParam;</div>
<div class="line"><a name="l00189"></a><span class="lineno">  189</span>&#160;        <a class="code" href="a00365.html#a422181d432442f3ca223ed68ff5585fb">RtlMBMessageWParamCharToWCS</a>(lpMsg-&gt;message, (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> *)&amp;(lpMsg-&gt;wParam));</div>
<div class="line"><a name="l00190"></a><span class="lineno">  190</span>&#160;        iT = <a class="code" href="a00362.html#a5f9f8382fc9fb580a55c96016dcf4f18">NtUserTranslateAccelerator</a>(hwnd, hAccel, lpMsg);</div>
<div class="line"><a name="l00191"></a><span class="lineno">  191</span>&#160;        lpMsg-&gt;wParam = wParamT;</div>
<div class="line"><a name="l00192"></a><span class="lineno">  192</span>&#160;        <span class="keywordflow">return</span> iT;</div>
<div class="line"><a name="l00193"></a><span class="lineno">  193</span>&#160; </div>
<div class="line"><a name="l00194"></a><span class="lineno">  194</span>&#160;    <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00195"></a><span class="lineno">  195</span>&#160;        <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00196"></a><span class="lineno">  196</span>&#160;    }</div>
<div class="line"><a name="l00197"></a><span class="lineno">  197</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l01601">NtUserTranslateAccelerator()</a> , 以及 <a class="el" href="a00932_source.html#l00442">RtlMBMessageWParamCharToWCS()</a>.</p>

</div>
</div>
<a id="a5576d0eb14d4f40cbb997515a3a801fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5576d0eb14d4f40cbb997515a3a801fa">&#9670;&nbsp;</a></span>TranslateAcceleratorW()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WINAPI TranslateAcceleratorW </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HACCEL&#160;</td>
          <td class="paramname"><em>hAccel</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPMSG&#160;</td>
          <td class="paramname"><em>lpMsg</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00132">132</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00136"></a><span class="lineno">  136</span>&#160;{</div>
<div class="line"><a name="l00137"></a><span class="lineno">  137</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00138"></a><span class="lineno">  138</span>&#160;<span class="comment">     * NULL pwnd is a valid case - since this is called from the center</span></div>
<div class="line"><a name="l00139"></a><span class="lineno">  139</span>&#160;<span class="comment">     * of main loops, pwnd == NULL happens all the time, and we shouldn&#39;t</span></div>
<div class="line"><a name="l00140"></a><span class="lineno">  140</span>&#160;<span class="comment">     * generate a warning because of it.</span></div>
<div class="line"><a name="l00141"></a><span class="lineno">  141</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00142"></a><span class="lineno">  142</span>&#160;    <span class="keywordflow">if</span> (hwnd == NULL)</div>
<div class="line"><a name="l00143"></a><span class="lineno">  143</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l00144"></a><span class="lineno">  144</span>&#160; </div>
<div class="line"><a name="l00145"></a><span class="lineno">  145</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l00146"></a><span class="lineno">  146</span>&#160;<span class="comment">     * We only need to pass key-down messages to the server,</span></div>
<div class="line"><a name="l00147"></a><span class="lineno">  147</span>&#160;<span class="comment">     * everything else ends up returning 0/FALSE from this function.</span></div>
<div class="line"><a name="l00148"></a><span class="lineno">  148</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l00149"></a><span class="lineno">  149</span>&#160;    <span class="keywordflow">switch</span> (lpMsg-&gt;message) {</div>
<div class="line"><a name="l00150"></a><span class="lineno">  150</span>&#160; </div>
<div class="line"><a name="l00151"></a><span class="lineno">  151</span>&#160;    <span class="keywordflow">case</span> WM_KEYDOWN:</div>
<div class="line"><a name="l00152"></a><span class="lineno">  152</span>&#160;    <span class="keywordflow">case</span> WM_SYSKEYDOWN:</div>
<div class="line"><a name="l00153"></a><span class="lineno">  153</span>&#160;    <span class="keywordflow">case</span> WM_CHAR:</div>
<div class="line"><a name="l00154"></a><span class="lineno">  154</span>&#160;    <span class="keywordflow">case</span> WM_SYSCHAR:</div>
<div class="line"><a name="l00155"></a><span class="lineno">  155</span>&#160;        <span class="keywordflow">return</span> <a class="code" href="a00362.html#a5f9f8382fc9fb580a55c96016dcf4f18">NtUserTranslateAccelerator</a>(hwnd, hAccel, lpMsg);</div>
<div class="line"><a name="l00156"></a><span class="lineno">  156</span>&#160; </div>
<div class="line"><a name="l00157"></a><span class="lineno">  157</span>&#160;    <span class="keywordflow">default</span>:</div>
<div class="line"><a name="l00158"></a><span class="lineno">  158</span>&#160;        <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l00159"></a><span class="lineno">  159</span>&#160;    }</div>
<div class="line"><a name="l00160"></a><span class="lineno">  160</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l01601">NtUserTranslateAccelerator()</a>.</p>

</div>
</div>
<a id="abf5c43108611c65d3701359a0f5a585d"></a>
<h2 class="memtitle"><span class="permalink"><a href="#abf5c43108611c65d3701359a0f5a585d">&#9670;&nbsp;</a></span>UnhookWindowsHook()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL UnhookWindowsHook </td>
          <td>(</td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>nCode</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HOOKPROC&#160;</td>
          <td class="paramname"><em>pfnFilterProc</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03035">3035</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03038"></a><span class="lineno"> 3038</span>&#160;{</div>
<div class="line"><a name="l03039"></a><span class="lineno"> 3039</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a>(nCode, (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)pfnFilterProc,</div>
<div class="line"><a name="l03040"></a><span class="lineno"> 3040</span>&#160;                                    <a class="code" href="a00335.html#a78003eec13048eac551af4befb462f29">SFI__UNHOOKWINDOWSHOOK</a>);</div>
<div class="line"><a name="l03041"></a><span class="lineno"> 3041</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03352">NtUserCallTwoParam()</a> , 以及 <a class="el" href="a00335_source.html#l00034">SFI__UNHOOKWINDOWSHOOK</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00953_source.html#l01681">ProfReleaseHook()</a>.</p>

</div>
</div>
<a id="a8bc3d6c71e90bc4c6472c0647af92301"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a8bc3d6c71e90bc4c6472c0647af92301">&#9670;&nbsp;</a></span>UpdateWindow()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL UpdateWindow </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwnd</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03049">3049</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03051"></a><span class="lineno"> 3051</span>&#160;{</div>
<div class="line"><a name="l03052"></a><span class="lineno"> 3052</span>&#160;    <a class="code" href="a02581.html">PWND</a> pwnd;</div>
<div class="line"><a name="l03053"></a><span class="lineno"> 3053</span>&#160; </div>
<div class="line"><a name="l03054"></a><span class="lineno"> 3054</span>&#160;    <span class="keywordflow">if</span> ((pwnd = <a class="code" href="a00293.html#a41d387d1b2d42169cbaa2092c8a02abf">ValidateHwnd</a>(hwnd)) == NULL) {</div>
<div class="line"><a name="l03055"></a><span class="lineno"> 3055</span>&#160;        <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l03056"></a><span class="lineno"> 3056</span>&#160;    }</div>
<div class="line"><a name="l03057"></a><span class="lineno"> 3057</span>&#160; </div>
<div class="line"><a name="l03058"></a><span class="lineno"> 3058</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03059"></a><span class="lineno"> 3059</span>&#160;<span class="comment">     * Don&#39;t need to do anything if this window does not need any painting</span></div>
<div class="line"><a name="l03060"></a><span class="lineno"> 3060</span>&#160;<span class="comment">     * and it has no child windows</span></div>
<div class="line"><a name="l03061"></a><span class="lineno"> 3061</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03062"></a><span class="lineno"> 3062</span>&#160;    <span class="keywordflow">if</span> (!NEEDSPAINT(pwnd) &amp;&amp; (pwnd-&gt;<a class="code" href="a02581.html#a6171c9000ea2060597a9bcf498ee0316">spwndChild</a> == NULL)) {</div>
<div class="line"><a name="l03063"></a><span class="lineno"> 3063</span>&#160;        <span class="keywordflow">return</span> TRUE;</div>
<div class="line"><a name="l03064"></a><span class="lineno"> 3064</span>&#160;    }</div>
<div class="line"><a name="l03065"></a><span class="lineno"> 3065</span>&#160; </div>
<div class="line"><a name="l03066"></a><span class="lineno"> 3066</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a>(hwnd, <a class="code" href="a00335.html#a6c2e9325edd797f44acf500abf8933d4">SFI_XXXUPDATEWINDOW</a>);</div>
<div class="line"><a name="l03067"></a><span class="lineno"> 3067</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03614_source.html#l03307">NtUserCallHwndLock()</a>, <a class="el" href="a00335_source.html#l00057">SFI_XXXUPDATEWINDOW</a>, <a class="el" href="a00365_source.html#l01393">tagWND::spwndChild</a> , 以及 <a class="el" href="a00293_source.html#l00090">ValidateHwnd</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00101_source.html#l00989">DialogBox2()</a>, <a class="el" href="a00125_source.html#l01945">ECResetTextInfo()</a>, <a class="el" href="a00323_source.html#l00107">ImmCreateSoftKeyboard()</a>, <a class="el" href="a00095_source.html#l00176">InternalCreateDialog()</a>, <a class="el" href="a00128_source.html#l02569">MLScroll()</a>, <a class="el" href="a00953_source.html#l00222">ProfAvgDlgCreate()</a>, <a class="el" href="a00953_source.html#l00196">ProfAvgDlgDraw()</a>, <a class="el" href="a00953_source.html#l01196">ProfMenu()</a>, <a class="el" href="a00953_source.html#l01159">ProfMove()</a>, <a class="el" href="a00953_source.html#l01124">ProfSize()</a>, <a class="el" href="a00953_source.html#l01694">StartDataCollector()</a>, <a class="el" href="a00248_source.html#l00794">StaticWndProcWorker()</a>, <a class="el" href="a00053_source.html#l01497">xxxCBHideListBoxWindow()</a>, <a class="el" href="a00053_source.html#l01600">xxxCBShowListBoxWindow()</a>, <a class="el" href="a00182_source.html#l00611">xxxLBoxCtlHScroll()</a>, <a class="el" href="a00182_source.html#l01841">xxxNewITop()</a>, <a class="el" href="a00248_source.html#l01119">xxxNextAniIconStep()</a>, <a class="el" href="a00053_source.html#l00028">xxxPressButton()</a> , 以及 <a class="el" href="a00248_source.html#l00092">xxxSetStaticImage()</a>.</p>

</div>
</div>
<a id="a16da2aa60bc128b2f0ac57e22c8a4e9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a16da2aa60bc128b2f0ac57e22c8a4e9e">&#9670;&nbsp;</a></span>UserRealizePalette()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> UserRealizePalette </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03087">3087</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03089"></a><span class="lineno"> 3089</span>&#160;{</div>
<div class="line"><a name="l03090"></a><span class="lineno"> 3090</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)<a class="code" href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hdc, <a class="code" href="a00335.html#a023d9a9b32b7e9d73d840a19fbe5b1ef">SFI_XXXREALIZEPALETTE</a>);</div>
<div class="line"><a name="l03091"></a><span class="lineno"> 3091</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03249">NtUserCallOneParam()</a>, <a class="el" href="a00335_source.html#l00046">SFI_XXXREALIZEPALETTE</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

</div>
</div>
<a id="aa85f959552d2ff6f5d39ea079eec8fe2"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa85f959552d2ff6f5d39ea079eec8fe2">&#9670;&nbsp;</a></span>UserRegisterWowHandlers()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> UserRegisterWowHandlers </td>
          <td>(</td>
          <td class="paramtype">APFNWOWHANDLERSIN&#160;</td>
          <td class="paramname"><em>apfnWowIn</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">APFNWOWHANDLERSOUT&#160;</td>
          <td class="paramname"><em>apfnWowOut</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02256">2256</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02259"></a><span class="lineno"> 2259</span>&#160;{</div>
<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span>&#160; </div>
<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span>&#160;    <span class="comment">// In&#39;ees</span></div>
<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span>&#160;    <a class="code" href="a00020.html#ae5397944cba1022434bf17359cf02720">pfnLocalAlloc</a> = apfnWowIn-&gt;pfnLocalAlloc;</div>
<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span>&#160;    <a class="code" href="a00020.html#a7a1070e7875c40e2adfec6154f1c1ab1">pfnLocalReAlloc</a> = apfnWowIn-&gt;pfnLocalReAlloc;</div>
<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span>&#160;    <a class="code" href="a00020.html#a5860944f5496a9daf7f7a4c406b2d43e">pfnLocalLock</a> = apfnWowIn-&gt;pfnLocalLock;</div>
<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span>&#160;    <a class="code" href="a00020.html#af2ec095af34bd59496591af260d0c652">pfnLocalUnlock</a> = apfnWowIn-&gt;pfnLocalUnlock;</div>
<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span>&#160;    <a class="code" href="a00020.html#a86779f6b4a166096179b6f4e5bdc77ff">pfnLocalSize</a> = apfnWowIn-&gt;pfnLocalSize;</div>
<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span>&#160;    <a class="code" href="a00020.html#a8d17cc38f593b0615e76437cb2c2a587">pfnLocalFree</a> = apfnWowIn-&gt;pfnLocalFree;</div>
<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span>&#160;    <a class="code" href="a00020.html#a069abfb17a960db1d2b87b3d08f82b44">pfnGetExpWinVer</a> = apfnWowIn-&gt;pfnGetExpWinVer;</div>
<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span>&#160;    <a class="code" href="a00020.html#a51859450ad5a4dfe34fed9925b024c89">pfnInitDlgCallback</a> = apfnWowIn-&gt;pfnInitDlgCb;</div>
<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span>&#160;    <a class="code" href="a00020.html#a13a3ee7c55bf8c846ebd91449034b143">pfn16GlobalAlloc</a> = apfnWowIn-&gt;pfn16GlobalAlloc;</div>
<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span>&#160;    <a class="code" href="a00020.html#afc201f87e78a533219c78af8c97ce005">pfn16GlobalFree</a> = apfnWowIn-&gt;pfn16GlobalFree;</div>
<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span>&#160;    <a class="code" href="a00020.html#a5ca751ac4b273a98f04a83917c71af06">pfnWowEmptyClipBoard</a> = apfnWowIn-&gt;pfnEmptyCB;</div>
<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span>&#160;    <a class="code" href="a00020.html#ac82dd12ceaab97a1144204557ed02857">pfnWowEditNextWord</a> = apfnWowIn-&gt;pfnWowEditNextWord;</div>
<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span>&#160;    <a class="code" href="a00020.html#a8ecd4816919d5cbc8021d828733d0aef">pfnWowCBStoreHandle</a> = apfnWowIn-&gt;pfnWowCBStoreHandle;</div>
<div class="line"><a name="l02275"></a><span class="lineno"> 2275</span>&#160; </div>
<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a61df4960e959076dce501822eb8411e3">pfnFindResourceExA</a> = apfnWowIn-&gt;pfnFindResourceEx;</div>
<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#acc7a89b13606bb910e8e8f2f71663931">pfnLoadResource</a> = apfnWowIn-&gt;pfnLoadResource;</div>
<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a64594fc7242e7ba2c98952f16c39f32d">pfnLockResource</a> = apfnWowIn-&gt;pfnLockResource;</div>
<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a9d3b4e93429fae456953debe600eccf3">pfnUnlockResource</a> = apfnWowIn-&gt;pfnUnlockResource;</div>
<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a81d339617d33dcc8558d1f53438dba19">pfnFreeResource</a> = apfnWowIn-&gt;pfnFreeResource;</div>
<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a7a3214fb07118e912fafb284270e19b3">pfnSizeofResource</a> = apfnWowIn-&gt;pfnSizeofResource;</div>
<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span>&#160;    <a class="code" href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a>-&gt;<a class="code" href="a01953.html#a286ed7fd91d46c0627d285269c52b80a">pfnFindResourceExW</a> = <a class="code" href="a00026.html#ae2f3f8240aef66cfffbe5af70aea9a02">WOWFindResourceExWCover</a>;</div>
<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span>&#160; </div>
<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span>&#160;    <a class="code" href="a00020.html#afb0ebf0c66010cf139ab4f7a9d4542b1">pfnWowWndProcEx</a> = apfnWowIn-&gt;pfnWowWndProcEx;</div>
<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span>&#160;    <a class="code" href="a00020.html#a92f0041d2aad1d7a082cd02b08b2eef3">pfnWowSetFakeDialogClass</a> = apfnWowIn-&gt;pfnWowSetFakeDialogClass;</div>
<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span>&#160; </div>
<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span>&#160;    <span class="comment">// Out&#39;ees</span></div>
<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span>&#160;<span class="preprocessor">#ifdef DEBUG</span></div>
<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span>&#160;    apfnWowOut-&gt;dwBldInfo = (WINVER &lt;&lt; 16) | 0x80000000;</div>
<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span>&#160;<span class="preprocessor">#else</span></div>
<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span>&#160;    apfnWowOut-&gt;dwBldInfo = (WINVER &lt;&lt; 16);</div>
<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span>&#160;<span class="preprocessor">#endif</span></div>
<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span>&#160;    apfnWowOut-&gt;pfnCsCreateWindowEx            = <a class="code" href="a03611.html#a6115159a3df3344553311b49547d1c93">_CreateWindowEx</a>;</div>
<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span>&#160;    apfnWowOut-&gt;pfnDirectedYield               = <a class="code" href="a00026.html#adc89923b3853de7ea5c658831193f408">DirectedYield</a>;</div>
<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span>&#160;    apfnWowOut-&gt;pfnFreeDDEData                 = <a class="code" href="a00086.html#ac15ecf31fbeaa6e816f2f916d4ed2371">FreeDDEData</a>;</div>
<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span>&#160;    apfnWowOut-&gt;pfnGetClassWOWWords            = <a class="code" href="a03611.html#a3ff236c77d352edb059ac5077ecbf9bb">GetClassWOWWords</a>;</div>
<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span>&#160;    apfnWowOut-&gt;pfnInitTask                    = <a class="code" href="a03611.html#a387282161de07eb8f101949bd4977039">InitTask</a>;</div>
<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span>&#160;    apfnWowOut-&gt;pfnRegisterClassWOWA           = <a class="code" href="a00026.html#a7a0f877b51caf12ba6afbafbdf6dfa88">RegisterClassWOWA</a>;</div>
<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span>&#160;    apfnWowOut-&gt;pfnRegisterUserHungAppHandlers = <a class="code" href="a00026.html#a72f4722e49f0e9590c8abe8395d82c17">RegisterUserHungAppHandlers</a>;</div>
<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span>&#160;    apfnWowOut-&gt;pfnServerCreateDialog          = <a class="code" href="a00095.html#abbb7186e7025996fee1d72fabd41ea38">InternalCreateDialog</a>;</div>
<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span>&#160;    apfnWowOut-&gt;pfnServerLoadCreateCursorIcon  = <a class="code" href="a00047.html#add4bbc95aaee184c1ab221c5ad3e50f5">WowServerLoadCreateCursorIcon</a>;</div>
<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span>&#160;    apfnWowOut-&gt;pfnServerLoadCreateMenu        = <a class="code" href="a00026.html#a1bf5f7e9d7c16c57be8b9132131866be">WowServerLoadCreateMenu</a>;</div>
<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span>&#160;    apfnWowOut-&gt;pfnWOWCleanup                  = <a class="code" href="a00362.html#ae24172cf62c849b9111ca8b8ce4e7c66">NtUserWOWCleanup</a>;</div>
<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span>&#160;    apfnWowOut-&gt;pfnWOWFindWindow               = <a class="code" href="a03611.html#a8391278e2e3d2d35d7651ece95415a14">WOWFindWindow</a>;</div>
<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span>&#160;    apfnWowOut-&gt;pfnWOWGetIdFromDirectory       = <a class="code" href="a00026.html#a71c35d9f06f56484a40c1ba2a9536ce7">WOWGetIdFromDirectory</a>;</div>
<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span>&#160;    apfnWowOut-&gt;pfnWOWLoadBitmapA              = <a class="code" href="a00026.html#a37382336eed0bd5a1649061ecdb801a8">WOWLoadBitmapA</a>;</div>
<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span>&#160;    apfnWowOut-&gt;pfnWowWaitForMsgAndEvent       = <a class="code" href="a00362.html#abd6293054dfb58fa6bd91632b227cf11">NtUserWaitForMsgAndEvent</a>;</div>
<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span>&#160;    apfnWowOut-&gt;pfnYieldTask                   = <a class="code" href="a00362.html#ab33b0ec1ddba5c1d2b09e34b453d27ff">NtUserYieldTask</a>;</div>
<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span>&#160;    apfnWowOut-&gt;pfnGetFullUserHandle           = <a class="code" href="a00026.html#aa9ce9abee64d83ba417fcae251e0301d">GetFullUserHandle</a>;</div>
<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span>&#160;    apfnWowOut-&gt;pfnGetMenuIndex                = <a class="code" href="a00362.html#af4a9d9de6255064914dc8916a47063c8">NtUserGetMenuIndex</a>;</div>
<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span>&#160;    apfnWowOut-&gt;pfnWowGetDefWindowProcBits     = <a class="code" href="a00026.html#aa6e0925d19bd41f4b0be4a22d97e2031">WowGetDefWindowProcBits</a>;</div>
<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span>&#160;    apfnWowOut-&gt;pfnFillWindow                  = <a class="code" href="a03611.html#ab82910c4539db8debc07209b4b83d38f">FillWindow</a>;</div>
<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span>&#160; </div>
<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span>&#160;    <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)&amp;<a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>;</div>
<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a03611_source.html#l01360">_CreateWindowEx()</a>, <a class="el" href="a00026_source.html#l02541">DirectedYield()</a>, <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03611_source.html#l00115">FillWindow()</a>, <a class="el" href="a00158_source.html#l00481">FreeDDEData()</a>, <a class="el" href="a03611_source.html#l00138">GetClassWOWWords()</a>, <a class="el" href="a00155_source.html#l00293">GetFullUserHandle()</a>, <a class="el" href="a00020_source.html#l00040">gSharedInfo</a>, <a class="el" href="a03611_source.html#l00178">InitTask()</a>, <a class="el" href="a00095_source.html#l00176">InternalCreateDialog()</a>, <a class="el" href="a03614_source.html#l03176">NtUserGetMenuIndex()</a>, <a class="el" href="a03614_source.html#l01109">NtUserWaitForMsgAndEvent()</a>, <a class="el" href="a03614_source.html#l05845">NtUserWOWCleanup()</a>, <a class="el" href="a03614_source.html#l05528">NtUserYieldTask()</a>, <a class="el" href="a00020_source.html#l00136">pfn16GlobalAlloc</a>, <a class="el" href="a00020_source.html#l00137">pfn16GlobalFree</a>, <a class="el" href="a00257_source.html#l01087">_RESCALLS::pfnFindResourceExA</a>, <a class="el" href="a00257_source.html#l01088">_RESCALLS::pfnFindResourceExW</a>, <a class="el" href="a00257_source.html#l01092">_RESCALLS::pfnFreeResource</a>, <a class="el" href="a00020_source.html#l00134">pfnGetExpWinVer</a>, <a class="el" href="a00020_source.html#l00135">pfnInitDlgCallback</a>, <a class="el" href="a00257_source.html#l01089">_RESCALLS::pfnLoadResource</a>, <a class="el" href="a00020_source.html#l00128">pfnLocalAlloc</a>, <a class="el" href="a00020_source.html#l00133">pfnLocalFree</a>, <a class="el" href="a00020_source.html#l00130">pfnLocalLock</a>, <a class="el" href="a00020_source.html#l00129">pfnLocalReAlloc</a>, <a class="el" href="a00020_source.html#l00132">pfnLocalSize</a>, <a class="el" href="a00020_source.html#l00131">pfnLocalUnlock</a>, <a class="el" href="a00257_source.html#l01090">_RESCALLS::pfnLockResource</a>, <a class="el" href="a00257_source.html#l01093">_RESCALLS::pfnSizeofResource</a>, <a class="el" href="a00257_source.html#l01091">_RESCALLS::pfnUnlockResource</a>, <a class="el" href="a00020_source.html#l00142">pfnWowCBStoreHandle</a>, <a class="el" href="a00020_source.html#l00141">pfnWowEditNextWord</a>, <a class="el" href="a00020_source.html#l00138">pfnWowEmptyClipBoard</a>, <a class="el" href="a00020_source.html#l00140">pfnWowSetFakeDialogClass</a>, <a class="el" href="a00020_source.html#l00139">pfnWowWndProcEx</a>, <a class="el" href="a00020_source.html#l00126">prescalls</a>, <a class="el" href="a00026_source.html#l02183">RegisterClassWOWA()</a>, <a class="el" href="a00026_source.html#l02860">RegisterUserHungAppHandlers()</a>, <a class="el" href="a00047_source.html#l03923">WOWFindResourceExWCover()</a>, <a class="el" href="a03611_source.html#l00036">WOWFindWindow()</a>, <a class="el" href="a00026_source.html#l02203">WowGetDefWindowProcBits()</a>, <a class="el" href="a00239_source.html#l00120">WOWGetIdFromDirectory()</a>, <a class="el" href="a00047_source.html#l03954">WOWLoadBitmapA()</a>, <a class="el" href="a00047_source.html#l03994">WowServerLoadCreateCursorIcon()</a> , 以及 <a class="el" href="a00026.html#a1bf5f7e9d7c16c57be8b9132131866be">WowServerLoadCreateMenu()</a>.</p>

</div>
</div>
<a id="ab0ca070931dc1cd00d30b75d1c148969"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ab0ca070931dc1cd00d30b75d1c148969">&#9670;&nbsp;</a></span>ValidateRgn()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL WINAPI ValidateRgn </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hWnd</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">HRGN&#160;</td>
          <td class="paramname"><em>hRgn</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01201">1201</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01202"></a><span class="lineno"> 1202</span>&#160;{</div>
<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span>&#160;    <span class="keywordflow">if</span> (hRgn != NULL) {</div>
<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span>&#160;        FIXUP_HANDLE(hRgn);</div>
<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span>&#160;        <span class="keywordflow">if</span> (hRgn == NULL)</div>
<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span>&#160;            <span class="keywordflow">return</span> FALSE;</div>
<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span>&#160;    }</div>
<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span>&#160; </div>
<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span>&#160;    <span class="keywordflow">return</span> (BOOL)<a class="code" href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a>(hWnd, (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hRgn,</div>
<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span>&#160;                                         <a class="code" href="a00335.html#a8918a81291d27a57e265225ad7ba4d2d">SFI_XXXVALIDATERGN</a>);</div>
<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03394">NtUserCallHwndParamLock()</a> , 以及 <a class="el" href="a00335_source.html#l00058">SFI_XXXVALIDATERGN</a>.</p>

</div>
</div>
<a id="a6bbea9ef48fa0e96ab73abc0f7ee8f9e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a6bbea9ef48fa0e96ab73abc0f7ee8f9e">&#9670;&nbsp;</a></span>WaitForInputIdle()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WaitForInputIdle </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hProcess</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>dwMilliseconds</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l01323">1323</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l01326"></a><span class="lineno"> 1326</span>&#160;{</div>
<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span>&#160;    PROCESS_BASIC_INFORMATION processinfo;</div>
<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span>&#160;    <a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> idProcess;</div>
<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span>&#160;    NTSTATUS status;</div>
<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span>&#160;<span class="comment">     * First get the process id from the hProcess.</span></div>
<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span>&#160;    status = NtQueryInformationProcess(hProcess, ProcessBasicInformation,</div>
<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span>&#160;            &amp;processinfo, <span class="keyword">sizeof</span>(processinfo), NULL);</div>
<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span>&#160;    <span class="keywordflow">if</span> (!NT_SUCCESS(status)) {</div>
<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span>&#160;        <span class="keywordflow">if</span> (status == STATUS_OBJECT_TYPE_MISMATCH) {</div>
<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span>&#160;            <span class="keywordflow">if</span> ((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hProcess &amp; 0x2) {</div>
<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span>&#160;<span class="comment">             * WOW Process handles are really semaphore handles.</span></div>
<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span>&#160;<span class="comment">             * CreateProcess ORs in a 0x2 (the low 2 bits of handles</span></div>
<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span>&#160;<span class="comment">             * are not used) so we can identify it more clearly.</span></div>
<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span>&#160;                idProcess = ((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hProcess &amp; ~0x03);</div>
<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span>&#160;                <span class="keywordflow">return</span> <a class="code" href="a00362.html#a7186dd2e5b3cb366a6aa11b1d2fa6f83">NtUserWaitForInputIdle</a>(idProcess, dwMilliseconds, TRUE);</div>
<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span>&#160;            }</div>
<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span>&#160; </div>
<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span>&#160;            <span class="comment">/*</span></div>
<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span>&#160;<span class="comment">             * VDM (DOS) Process handles are really semaphore handles.</span></div>
<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span>&#160;<span class="comment">             * CreateProcess ORs in a 0x1 (the low 2 bits of handles</span></div>
<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span>&#160;<span class="comment">             * are not used) so we can identify and return immidiately.</span></div>
<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span>&#160;<span class="comment">             */</span></div>
<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span>&#160;            <span class="keywordflow">if</span> ((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hProcess &amp; 0x1) {</div>
<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span>&#160;                <span class="keywordflow">return</span> 0;</div>
<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span>&#160;            }</div>
<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span>&#160;        }</div>
<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span>&#160; </div>
<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span>&#160;        <a class="code" href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a>(ERROR_INVALID_HANDLE, <a class="code" href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a>, <span class="stringliteral">&quot;WaitForInputIdle invalid process&quot;</span>, hProcess);</div>
<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span>&#160;        <span class="keywordflow">return</span> (<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)-1;</div>
<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span>&#160;    }</div>
<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span>&#160;    idProcess = processinfo.UniqueProcessId;</div>
<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span>&#160;    <span class="keywordflow">return</span> <a class="code" href="a00362.html#a7186dd2e5b3cb366a6aa11b1d2fa6f83">NtUserWaitForInputIdle</a>(idProcess, dwMilliseconds, FALSE);</div>
<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l05117">NtUserWaitForInputIdle()</a>, <a class="el" href="a00371_source.html#l00029">RIP_WARNING</a> , 以及 <a class="el" href="a00371_source.html#l00120">RIPERR1</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a03272_source.html#l00172">LaunchHelper()</a> , 以及 <a class="el" href="a00035_source.html#l00058">UserClientDllInitialize()</a>.</p>

</div>
</div>
<a id="a35c65c2e4dea5d532d3d0d53bd43e9fa"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a35c65c2e4dea5d532d3d0d53bd43e9fa">&#9670;&nbsp;</a></span>WindowFromDC()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HWND WindowFromDC </td>
          <td>(</td>
          <td class="paramtype">HDC&#160;</td>
          <td class="paramname"><em>hdc</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03099">3099</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03101"></a><span class="lineno"> 3101</span>&#160;{</div>
<div class="line"><a name="l03102"></a><span class="lineno"> 3102</span>&#160;    FIXUP_HANDLE(hdc);</div>
<div class="line"><a name="l03103"></a><span class="lineno"> 3103</span>&#160;    <span class="keywordflow">return</span> (HWND)<a class="code" href="a00362.html#a46d280dea6feb9d7ee1540e34eee4e26">NtUserCallOneParamTranslate</a>((<a class="code" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>)hdc,</div>
<div class="line"><a name="l03104"></a><span class="lineno"> 3104</span>&#160;                                             <a class="code" href="a00335.html#a1651981d8baab438f4063d4f8477a06f">SFI__WINDOWFROMDC</a>);</div>
<div class="line"><a name="l03105"></a><span class="lineno"> 3105</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00563_source.html#l00175">DWORD</a>, <a class="el" href="a03614_source.html#l03266">NtUserCallOneParamTranslate()</a> , 以及 <a class="el" href="a00335_source.html#l00035">SFI__WINDOWFROMDC</a>.</p>

</div>
</div>
<a id="a44b100b9bc713eb0be0cfd01dfa502c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a44b100b9bc713eb0be0cfd01dfa502c4">&#9670;&nbsp;</a></span>WOWDlgInit()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a> WOWDlgInit </td>
          <td>(</td>
          <td class="paramtype">HWND&#160;</td>
          <td class="paramname"><em>hwndDlg</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LONG&#160;</td>
          <td class="paramname"><em>lParam</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02326">2326</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02329"></a><span class="lineno"> 2329</span>&#160;{</div>
<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>(<a class="code" href="a00020.html#a51859450ad5a4dfe34fed9925b024c89">pfnInitDlgCallback</a> != NULL);</div>
<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span>&#160; </div>
<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span>&#160;    <span class="keywordflow">return</span> (*<a class="code" href="a00020.html#a51859450ad5a4dfe34fed9925b024c89">pfnInitDlgCallback</a>)(hwndDlg, lParam);</div>
<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00020_source.html#l00135">pfnInitDlgCallback</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00095_source.html#l00176">InternalCreateDialog()</a>.</p>

</div>
</div>
<a id="ae2f3f8240aef66cfffbe5af70aea9a02"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae2f3f8240aef66cfffbe5af70aea9a02">&#9670;&nbsp;</a></span>WOWFindResourceExWCover()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HANDLE WOWFindResourceExWCover </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hmod</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPCWSTR&#160;</td>
          <td class="paramname"><em>rt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPCWSTR&#160;</td>
          <td class="paramname"><em>lpUniName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">WORD&#160;</td>
          <td class="paramname"><em>LangId</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00047_source.html">clres.c</a> 第 <a class="el" href="a00047_source.html#l03923">3923</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03928"></a><span class="lineno"> 3928</span>&#160;{</div>
<div class="line"><a name="l03929"></a><span class="lineno"> 3929</span>&#160;    LPSTR  lpAnsiName;</div>
<div class="line"><a name="l03930"></a><span class="lineno"> 3930</span>&#160;    HANDLE hRes;</div>
<div class="line"><a name="l03931"></a><span class="lineno"> 3931</span>&#160; </div>
<div class="line"><a name="l03932"></a><span class="lineno"> 3932</span>&#160;    <span class="keywordflow">if</span> (<a class="code" href="a00962.html#a78bf4b8bea0276f89c546081d1f8495d">ID</a>(lpUniName))</div>
<div class="line"><a name="l03933"></a><span class="lineno"> 3933</span>&#160;        <span class="keywordflow">return</span> FINDRESOURCEEXA(hmod, (LPSTR)lpUniName, (LPSTR)rt, LangId);</div>
<div class="line"><a name="l03934"></a><span class="lineno"> 3934</span>&#160; </div>
<div class="line"><a name="l03935"></a><span class="lineno"> 3935</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l03936"></a><span class="lineno"> 3936</span>&#160;<span class="comment">     * Otherwise convert the name of the menu then call LoadMenu</span></div>
<div class="line"><a name="l03937"></a><span class="lineno"> 3937</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l03938"></a><span class="lineno"> 3938</span>&#160;    <span class="keywordflow">if</span> (!WCSToMB(lpUniName, -1, &amp;lpAnsiName, -1, TRUE))</div>
<div class="line"><a name="l03939"></a><span class="lineno"> 3939</span>&#160;        <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03940"></a><span class="lineno"> 3940</span>&#160; </div>
<div class="line"><a name="l03941"></a><span class="lineno"> 3941</span>&#160;    hRes = FINDRESOURCEEXA(hmod, lpAnsiName, (LPSTR)rt, LangId);</div>
<div class="line"><a name="l03942"></a><span class="lineno"> 3942</span>&#160; </div>
<div class="line"><a name="l03943"></a><span class="lineno"> 3943</span>&#160;    UserLocalFree(lpAnsiName);</div>
<div class="line"><a name="l03944"></a><span class="lineno"> 3944</span>&#160; </div>
<div class="line"><a name="l03945"></a><span class="lineno"> 3945</span>&#160;    <span class="keywordflow">return</span> hRes;</div>
<div class="line"><a name="l03946"></a><span class="lineno"> 3946</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00962_source.html#l00006">ID</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="aa6e0925d19bd41f4b0be4a22d97e2031"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aa6e0925d19bd41f4b0be4a22d97e2031">&#9670;&nbsp;</a></span>WowGetDefWindowProcBits()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">WORD WowGetDefWindowProcBits </td>
          <td>(</td>
          <td class="paramtype">PBYTE&#160;</td>
          <td class="paramname"><em>pDefWindowProcBits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">WORD&#160;</td>
          <td class="paramname"><em>cbDefWindowProcBits</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l02203">2203</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l02206"></a><span class="lineno"> 2206</span>&#160;{</div>
<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span>&#160;    WORD  wMaxMsg;</div>
<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span>&#160;    PBYTE pbSrc, pbDst, pbDstEnd;</div>
<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span>&#160; </div>
<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span>&#160;    <span class="comment">/*</span></div>
<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span>&#160;<span class="comment">     * Merge the bits from gpsi-&gt;gabDefWindowMsgs and</span></div>
<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span>&#160;<span class="comment">     * gpsi-&gt;gabDefWindowSpecMsgs into WOW&#39;s DefWindowProcBits.  These two</span></div>
<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span>&#160;<span class="comment">     * indicate which messages must go directly to the server and which</span></div>
<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span>&#160;<span class="comment">     * can be handled with some special code in DefWindowProcWorker.</span></div>
<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span>&#160;<span class="comment">     * Bitwise OR&#39;ing the two gives a bit array with 1 in the bit field</span></div>
<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span>&#160;<span class="comment">     * for each message that must go to user32&#39;s DefWindowProc, and 0</span></div>
<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span>&#160;<span class="comment">     * for those that can be returned back to the client immediately.</span></div>
<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span>&#160;<span class="comment">     *</span></div>
<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span>&#160;<span class="comment">     * For speed we assume WOW has zeroed the buffer, in fact it&#39;s in</span></div>
<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span>&#160;<span class="comment">     * USER.EXE&#39;s code segment and is zeroed in the image.</span></div>
<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span>&#160;<span class="comment">     */</span></div>
<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span>&#160; </div>
<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span>&#160;    wMaxMsg = max(<a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a47f087b8951b9b7e7ce38300b67c1c6f">DefWindowMsgs</a>.<a class="code" href="a02517.html#a42d641821b5c3c8a4f9dd0328dabfc8a">maxMsgs</a>,</div>
<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span>&#160;            <a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a6b55f74fa034e288f0fa05c160738484">DefWindowSpecMsgs</a>.<a class="code" href="a02517.html#a42d641821b5c3c8a4f9dd0328dabfc8a">maxMsgs</a>);</div>
<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span>&#160; </div>
<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span>&#160;    <a class="code" href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a>((wMaxMsg / 8 + 1) &lt;= cbDefWindowProcBits);</div>
<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span>&#160; </div>
<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span>&#160;    <span class="comment">//</span></div>
<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span>&#160;    <span class="comment">// If the above assertion fires, the size of the DWPBits array in</span></div>
<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span>&#160;    <span class="comment">// \nt\private\mvdm\wow16\user\user.asm needs to be increased.</span></div>
<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span>&#160;    <span class="comment">//</span></div>
<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span>&#160; </div>
<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span>&#160;    <span class="comment">/* First copy the bits from DefWindowMsgs */</span></div>
<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span>&#160; </div>
<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span>&#160;    RtlCopyMemory(</div>
<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span>&#160;        pDefWindowProcBits,</div>
<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span>&#160;        <a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a47f087b8951b9b7e7ce38300b67c1c6f">DefWindowMsgs</a>.<a class="code" href="a02517.html#a2d6495c3cf7fb3fbdd27638ad3de548e">abMsgs</a>,</div>
<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span>&#160;        <a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a47f087b8951b9b7e7ce38300b67c1c6f">DefWindowMsgs</a>.<a class="code" href="a02517.html#a42d641821b5c3c8a4f9dd0328dabfc8a">maxMsgs</a> / 8 + 1</div>
<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span>&#160;        );</div>
<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span>&#160; </div>
<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span>&#160;    <span class="comment">/* Next OR in the bits from DefWindowSpecMsgs */</span></div>
<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span>&#160; </div>
<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span>&#160;    pbSrc = <a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a6b55f74fa034e288f0fa05c160738484">DefWindowSpecMsgs</a>.<a class="code" href="a02517.html#a2d6495c3cf7fb3fbdd27638ad3de548e">abMsgs</a>;</div>
<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span>&#160;    pbDst = pDefWindowProcBits;</div>
<div class="line"><a name="l02245"></a><span class="lineno"> 2245</span>&#160;    pbDstEnd = pbDst + (<a class="code" href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a>.<a class="code" href="a02521.html#a6b55f74fa034e288f0fa05c160738484">DefWindowSpecMsgs</a>.<a class="code" href="a02517.html#a42d641821b5c3c8a4f9dd0328dabfc8a">maxMsgs</a> / 8 + 1);</div>
<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span>&#160; </div>
<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span>&#160;    <span class="keywordflow">while</span> (pbDst &lt; pbDstEnd)</div>
<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span>&#160;    {</div>
<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span>&#160;        *pbDst++ |= *pbSrc++;</div>
<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span>&#160;    }</div>
<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span>&#160; </div>
<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span>&#160;    <span class="keywordflow">return</span> wMaxMsg;</div>
<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00365_source.html#l01055">_WNDMSG::abMsgs</a>, <a class="el" href="a00365_source.html#l01070">tagSHAREDINFO::DefWindowMsgs</a>, <a class="el" href="a00365_source.html#l01071">tagSHAREDINFO::DefWindowSpecMsgs</a>, <a class="el" href="a00020_source.html#l00040">gSharedInfo</a>, <a class="el" href="a00365_source.html#l01054">_WNDMSG::maxMsgs</a> , 以及 <a class="el" href="a00950_source.html#l00117">UserAssert</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="a71c35d9f06f56484a40c1ba2a9536ce7"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a71c35d9f06f56484a40c1ba2a9536ce7">&#9670;&nbsp;</a></span>WOWGetIdFromDirectory()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int WOWGetIdFromDirectory </td>
          <td>(</td>
          <td class="paramtype">PBYTE&#160;</td>
          <td class="paramname"><em>presbits</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>&#160;</td>
          <td class="paramname"><em>rt</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00239_source.html">rtlres.c</a> 第 <a class="el" href="a00239_source.html#l00120">120</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l00123"></a><span class="lineno">  123</span>&#160;{</div>
<div class="line"><a name="l00124"></a><span class="lineno">  124</span>&#160;    <span class="keywordflow">return</span>(<a class="code" href="a00047.html#ad201115615b1fdd45228c5f81c4364d3">LookupIconIdFromDirectoryEx</a>(presbits,</div>
<div class="line"><a name="l00125"></a><span class="lineno">  125</span>&#160;                                       rt == (<a class="code" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a>)RT_ICON,</div>
<div class="line"><a name="l00126"></a><span class="lineno">  126</span>&#160;                                       0,</div>
<div class="line"><a name="l00127"></a><span class="lineno">  127</span>&#160;                                       0,</div>
<div class="line"><a name="l00128"></a><span class="lineno">  128</span>&#160;                                       LR_DEFAULTSIZE));</div>
<div class="line"><a name="l00129"></a><span class="lineno">  129</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00047_source.html#l01378">LookupIconIdFromDirectoryEx()</a> , 以及 <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="a37382336eed0bd5a1649061ecdb801a8"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a37382336eed0bd5a1649061ecdb801a8">&#9670;&nbsp;</a></span>WOWLoadBitmapA()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HBITMAP WOWLoadBitmapA </td>
          <td>(</td>
          <td class="paramtype">HINSTANCE&#160;</td>
          <td class="paramname"><em>hmod</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPCSTR&#160;</td>
          <td class="paramname"><em>lpName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPBYTE&#160;</td>
          <td class="paramname"><em>pResData</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>cbResData</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00047_source.html">clres.c</a> 第 <a class="el" href="a00047_source.html#l03954">3954</a> 行定义.</p>
<div class="fragment"><div class="line"><a name="l03959"></a><span class="lineno"> 3959</span>&#160;{</div>
<div class="line"><a name="l03960"></a><span class="lineno"> 3960</span>&#160;    LPWSTR  lpUniName;</div>
<div class="line"><a name="l03961"></a><span class="lineno"> 3961</span>&#160;    HBITMAP hRet;</div>
<div class="line"><a name="l03962"></a><span class="lineno"> 3962</span>&#160; </div>
<div class="line"><a name="l03963"></a><span class="lineno"> 3963</span>&#160;    <span class="keywordflow">if</span> (pResData == NULL) {</div>
<div class="line"><a name="l03964"></a><span class="lineno"> 3964</span>&#160; </div>
<div class="line"><a name="l03965"></a><span class="lineno"> 3965</span>&#160;        <span class="keywordflow">if</span> (<a class="code" href="a00962.html#a78bf4b8bea0276f89c546081d1f8495d">ID</a>(lpName))</div>
<div class="line"><a name="l03966"></a><span class="lineno"> 3966</span>&#160;            <span class="keywordflow">return</span> <a class="code" href="a00047.html#a7334e435e4e4218b5b4cdc551dafec76">LoadBmp</a>(hmod, (LPCWSTR)lpName, 0, 0, 0);</div>
<div class="line"><a name="l03967"></a><span class="lineno"> 3967</span>&#160; </div>
<div class="line"><a name="l03968"></a><span class="lineno"> 3968</span>&#160;        <span class="keywordflow">if</span> (!MBToWCS(lpName, -1, &amp;lpUniName, -1, TRUE))</div>
<div class="line"><a name="l03969"></a><span class="lineno"> 3969</span>&#160;            <span class="keywordflow">return</span> NULL;</div>
<div class="line"><a name="l03970"></a><span class="lineno"> 3970</span>&#160; </div>
<div class="line"><a name="l03971"></a><span class="lineno"> 3971</span>&#160;        hRet = <a class="code" href="a00047.html#a7334e435e4e4218b5b4cdc551dafec76">LoadBmp</a>(hmod, lpUniName, 0, 0, 0);</div>
<div class="line"><a name="l03972"></a><span class="lineno"> 3972</span>&#160; </div>
<div class="line"><a name="l03973"></a><span class="lineno"> 3973</span>&#160;        UserLocalFree(lpUniName);</div>
<div class="line"><a name="l03974"></a><span class="lineno"> 3974</span>&#160; </div>
<div class="line"><a name="l03975"></a><span class="lineno"> 3975</span>&#160;    } <span class="keywordflow">else</span> {</div>
<div class="line"><a name="l03976"></a><span class="lineno"> 3976</span>&#160; </div>
<div class="line"><a name="l03977"></a><span class="lineno"> 3977</span>&#160;        hRet = <a class="code" href="a00047.html#a8df8eb9940bc362bd50ffc2aa0d7290f">ConvertDIBBitmap</a>((LPBITMAPINFOHEADER)pResData,</div>
<div class="line"><a name="l03978"></a><span class="lineno"> 3978</span>&#160;                                0,</div>
<div class="line"><a name="l03979"></a><span class="lineno"> 3979</span>&#160;                                0,</div>
<div class="line"><a name="l03980"></a><span class="lineno"> 3980</span>&#160;                                LR_DEFAULTSIZE,</div>
<div class="line"><a name="l03981"></a><span class="lineno"> 3981</span>&#160;                                NULL,</div>
<div class="line"><a name="l03982"></a><span class="lineno"> 3982</span>&#160;                                NULL);</div>
<div class="line"><a name="l03983"></a><span class="lineno"> 3983</span>&#160;    }</div>
<div class="line"><a name="l03984"></a><span class="lineno"> 3984</span>&#160; </div>
<div class="line"><a name="l03985"></a><span class="lineno"> 3985</span>&#160;    <span class="keywordflow">return</span> hRet;</div>
<div class="line"><a name="l03986"></a><span class="lineno"> 3986</span>&#160;}</div>
</div><!-- fragment -->
<p class="reference">引用了 <a class="el" href="a00047_source.html#l03488">ConvertDIBBitmap()</a>, <a class="el" href="a00962_source.html#l00006">ID</a> , 以及 <a class="el" href="a00047_source.html#l01733">LoadBmp()</a>.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<a id="a1bf5f7e9d7c16c57be8b9132131866be"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a1bf5f7e9d7c16c57be8b9132131866be">&#9670;&nbsp;</a></span>WowServerLoadCreateMenu()</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">HMENU WowServerLoadCreateMenu </td>
          <td>(</td>
          <td class="paramtype">HANDLE&#160;</td>
          <td class="paramname"><em>hMod</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">LPTSTR&#160;</td>
          <td class="paramname"><em>lpName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">CONST LPMENUTEMPLATE&#160;</td>
          <td class="paramname"><em>pmt</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a>&#160;</td>
          <td class="paramname"><em>cb</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">BOOL&#160;</td>
          <td class="paramname"><em>fCallClient</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l02256">UserRegisterWowHandlers()</a>.</p>

</div>
</div>
<h2 class="groupheader">变量说明</h2>
<a id="a5d3ce9a9c27f144a237797121474dbee"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a5d3ce9a9c27f144a237797121474dbee">&#9670;&nbsp;</a></span>gfLogonProcess</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">BOOL gfLogonProcess = FALSE</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00032">32</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00035_source.html#l00703">LoadAppDlls()</a> , 以及 <a class="el" href="a00026_source.html#l03739">RegisterLogonProcess()</a>.</p>

</div>
</div>
<a id="a42e773ebcf36c0a3b2404ea7f4a4cb6e"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a42e773ebcf36c0a3b2404ea7f4a4cb6e">&#9670;&nbsp;</a></span>gphn</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a> gphn = NULL</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00214">214</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l00286">ClientEmptyClipboard()</a>, <a class="el" href="a00026_source.html#l00323">GetClipboardData()</a> , 以及 <a class="el" href="a00026_source.html#l00713">SetClipboardData()</a>.</p>

</div>
</div>
<a id="a0b9f32df129dc236ccddbb022b51842f"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a0b9f32df129dc236ccddbb022b51842f">&#9670;&nbsp;</a></span>hCachedHKL</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">HKL hCachedHKL = 0</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00937">937</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l00940">ToAsciiEx()</a>.</p>

</div>
</div>
<a id="af9d5546ba0d4af57ff5515f14371a7f1"></a>
<h2 class="memtitle"><span class="permalink"><a href="#af9d5546ba0d4af57ff5515f14371a7f1">&#9670;&nbsp;</a></span>pwszKLLibSafety</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST LPWSTR pwszKLLibSafety = L&quot;kbdus.dll&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00026">26</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>.</p>

</div>
</div>
<a id="a77cef7c8f3b2f972456755554e63c192"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a77cef7c8f3b2f972456755554e63c192">&#9670;&nbsp;</a></span>szKLFile</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST WCHAR szKLFile[] = L&quot;Layout File&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03409">3409</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>.</p>

</div>
</div>
<a id="ad0b7e26330f88a9b5fe86c7cc329d2c4"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ad0b7e26330f88a9b5fe86c7cc329d2c4">&#9670;&nbsp;</a></span>szKLId</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST WCHAR szKLId[] = L&quot;Layout <a class="el" href="a00962.html#a78bf4b8bea0276f89c546081d1f8495d">ID</a>&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03410">3410</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>.</p>

</div>
</div>
<a id="aed7c462c6c2968b207b5cc5808996709"></a>
<h2 class="memtitle"><span class="permalink"><a href="#aed7c462c6c2968b207b5cc5808996709">&#9670;&nbsp;</a></span>szKLKey</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST WCHAR szKLKey[] = L&quot;\\Registry\\Machine\\System\\CurrentControlSet\\Control\\Keyboard Layouts\\&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03408">3408</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>.</p>

</div>
</div>
<a id="ae120b606a547d47bb2b247390cd99e34"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ae120b606a547d47bb2b247390cd99e34">&#9670;&nbsp;</a></span>szPreLoadSeq</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST WCHAR szPreLoadSeq[] = L&quot;%d&quot;</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l03374">3374</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03378">LoadPreloadKeyboardLayouts()</a>.</p>

</div>
</div>
<a id="ace44ba95256a8598283b551b22699143"></a>
<h2 class="memtitle"><span class="permalink"><a href="#ace44ba95256a8598283b551b22699143">&#9670;&nbsp;</a></span>uCachedCP</h2>

<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> uCachedCP = 0</td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">static</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00936">936</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l00940">ToAsciiEx()</a>.</p>

</div>
</div>
<a id="a82f3484223376f86b3f6e2677fd23e0a"></a>
<h2 class="memtitle"><span class="permalink"><a href="#a82f3484223376f86b3f6e2677fd23e0a">&#9670;&nbsp;</a></span>wKbdLocaleSafety</h2>

<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">CONST <a class="el" href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a> wKbdLocaleSafety = 0x04090409</td>
        </tr>
      </table>
</div><div class="memdoc">

<p class="definition">在文件 <a class="el" href="a00026_source.html">client.c</a> 第 <a class="el" href="a00026_source.html#l00027">27</a> 行定义.</p>

<p class="reference">被这些函数引用 <a class="el" href="a00026_source.html#l03413">OpenKeyboardLayoutFile()</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<div class="ttc" id="aa00020_html_ae142b9698e40ef094e7481d595ddc9ae"><div class="ttname"><a href="a00020.html#ae142b9698e40ef094e7481d595ddc9ae">ghFontSys</a></div><div class="ttdeci">HFONT ghFontSys</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00101">clglobal.c:101</a></div></div>
<div class="ttc" id="aa00020_html_a86779f6b4a166096179b6f4e5bdc77ff"><div class="ttname"><a href="a00020.html#a86779f6b4a166096179b6f4e5bdc77ff">pfnLocalSize</a></div><div class="ttdeci">PFNLSIZE pfnLocalSize</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00132">clglobal.c:132</a></div></div>
<div class="ttc" id="aa00263_html_a52c48f6bdd99bf8fee75d67f1b1b4d01"><div class="ttname"><a href="a00263.html#a52c48f6bdd99bf8fee75d67f1b1b4d01">TestWindowProcess</a></div><div class="ttdeci">BOOL TestWindowProcess(PWND pwnd)</div><div class="ttdef"><b>Definition:</b> <a href="a00263_source.html#l00489">winmgrc.c:489</a></div></div>
<div class="ttc" id="aa00335_html_ad978c3d488a9be1c39bf73dea6315a51"><div class="ttname"><a href="a00335.html#ad978c3d488a9be1c39bf73dea6315a51">SFI__GETMESSAGEPOS</a></div><div class="ttdeci">#define SFI__GETMESSAGEPOS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00013">cscall.h:13</a></div></div>
<div class="ttc" id="aa00335_html_a63635bbcd2b39df786ce1f5f3680b36f"><div class="ttname"><a href="a00335.html#a63635bbcd2b39df786ce1f5f3680b36f">SFI_XXXDRAWMENUBAR</a></div><div class="ttdeci">#define SFI_XXXDRAWMENUBAR</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00041">cscall.h:41</a></div></div>
<div class="ttc" id="aa00371_html_a01c4659626880ba56745765a3580a36b"><div class="ttname"><a href="a00371.html#a01c4659626880ba56745765a3580a36b">RIPMSG0</a></div><div class="ttdeci">#define RIPMSG0(flags, szFmt)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00131">winerrp.h:131</a></div></div>
<div class="ttc" id="aa00020_html_a2c6de28f0ac64aed3f713793267b9a4e"><div class="ttname"><a href="a00020.html#a2c6de28f0ac64aed3f713793267b9a4e">ghbrWindowText</a></div><div class="ttdeci">HBRUSH ghbrWindowText</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00102">clglobal.c:102</a></div></div>
<div class="ttc" id="aa03611_html_ab36183158992940b36c1a43c4fe55179"><div class="ttname"><a href="a03611.html#ab36183158992940b36c1a43c4fe55179">ToUnicodeEx</a></div><div class="ttdeci">int ToUnicodeEx(UINT wVirtKey, UINT wScanCode, PBYTE pKeyState, LPWSTR pwszBuff, int cchBuff, UINT wFlags, HKL hkl)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l01128">client/ntstubs.c:1128</a></div></div>
<div class="ttc" id="aa00362_html_aa7b94b98ecf033425c10a53450deab43"><div class="ttname"><a href="a00362.html#aa7b94b98ecf033425c10a53450deab43">NtUserOpenDesktop</a></div><div class="ttdeci">HDESK NtUserOpenDesktop(IN POBJECT_ATTRIBUTES pObja, IN DWORD dwFlags, IN ACCESS_MASK amRequest)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l00869">kernel/ntstubs.c:869</a></div></div>
<div class="ttc" id="aa02477_html_a3c509629a36511ee0d17273de6b9d6af"><div class="ttname"><a href="a02477.html#a3c509629a36511ee0d17273de6b9d6af">_CLIENTINFO::dwTIFlags</a></div><div class="ttdeci">DWORD dwTIFlags</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00378">user.h:378</a></div></div>
<div class="ttc" id="aa00335_html_a364199824e27a5615224f6c0f07ea177"><div class="ttname"><a href="a00335.html#a364199824e27a5615224f6c0f07ea177">SFI__SHOWSTARTGLASS</a></div><div class="ttdeci">#define SFI__SHOWSTARTGLASS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00032">cscall.h:32</a></div></div>
<div class="ttc" id="aa00026_html_ae2f3f8240aef66cfffbe5af70aea9a02"><div class="ttname"><a href="a00026.html#ae2f3f8240aef66cfffbe5af70aea9a02">WOWFindResourceExWCover</a></div><div class="ttdeci">HANDLE WOWFindResourceExWCover(HANDLE hmod, LPCWSTR rt, LPCWSTR lpUniName, WORD LangId)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l03923">clres.c:3923</a></div></div>
<div class="ttc" id="aa02513_html_a4bd4bf0c7aa2d88610b01f436ec2e82d"><div class="ttname"><a href="a02513.html#a4bd4bf0c7aa2d88610b01f436ec2e82d">tagSERVERINFO::cxSysFontChar</a></div><div class="ttdeci">int cxSysFontChar</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01013">user.h:1013</a></div></div>
<div class="ttc" id="aa00362_html_a6c484222639935903202a121ed6db9a2"><div class="ttname"><a href="a00362.html#a6c484222639935903202a121ed6db9a2">NtUserGetDCEx</a></div><div class="ttdeci">HDC NtUserGetDCEx(IN HWND hwnd, IN HRGN hrgnClip, IN DWORD flags)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05264">kernel/ntstubs.c:5264</a></div></div>
<div class="ttc" id="aa00362_html_a7c9ffa4cf005b7a9b7258d6c60beca0c"><div class="ttname"><a href="a00362.html#a7c9ffa4cf005b7a9b7258d6c60beca0c">NtUserCallHwndLock</a></div><div class="ttdeci">DWORD NtUserCallHwndLock(IN HWND hwnd, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03307">kernel/ntstubs.c:3307</a></div></div>
<div class="ttc" id="aa02521_html_a47f087b8951b9b7e7ce38300b67c1c6f"><div class="ttname"><a href="a02521.html#a47f087b8951b9b7e7ce38300b67c1c6f">tagSHAREDINFO::DefWindowMsgs</a></div><div class="ttdeci">WNDMSG DefWindowMsgs</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01070">user.h:1070</a></div></div>
<div class="ttc" id="aa00020_html_ad4bac0b7b09f557d30760d16f4a5772d"><div class="ttname"><a href="a00020.html#ad4bac0b7b09f557d30760d16f4a5772d">ghdcBits2</a></div><div class="ttdeci">HDC ghdcBits2</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00099">clglobal.c:99</a></div></div>
<div class="ttc" id="aa00362_html_a2d58b382ebfe303bf8c83fd956758754"><div class="ttname"><a href="a00362.html#a2d58b382ebfe303bf8c83fd956758754">NtUserBreak</a></div><div class="ttdeci">DWORD NtUserBreak(void)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03220">kernel/ntstubs.c:3220</a></div></div>
<div class="ttc" id="aa00941_html_aaf8b3ae5e2b40b6de6cc9377d53baa45"><div class="ttname"><a href="a00941.html#aaf8b3ae5e2b40b6de6cc9377d53baa45">WideCharToMultiByte</a></div><div class="ttdeci">int WideCharToMultiByte(UINT CodePage, DWORD dwFlags, LPCWSTR lpWideCharStr, int cchWideChar, LPSTR lpMultiByteStr, int cchMultiByte, LPCSTR lpDefaultChar, LPBOOL lpUsedDefaultChar)</div></div>
<div class="ttc" id="aa00026_html_afab2ba434c2e8270eede610539dee8b9"><div class="ttname"><a href="a00026.html#afab2ba434c2e8270eede610539dee8b9">SW_FLAG_RC</a></div><div class="ttdeci">#define SW_FLAG_RC</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01279">client.c:1279</a></div></div>
<div class="ttc" id="aa00335_html_a3491d8f26b5092f0b2bf3cfe2701e5a6"><div class="ttname"><a href="a00335.html#a3491d8f26b5092f0b2bf3cfe2701e5a6">SFI_XXXDIRECTEDYIELD</a></div><div class="ttdeci">#define SFI_XXXDIRECTEDYIELD</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00040">cscall.h:40</a></div></div>
<div class="ttc" id="aa03611_html_a3ff236c77d352edb059ac5077ecbf9bb"><div class="ttname"><a href="a03611.html#a3ff236c77d352edb059ac5077ecbf9bb">GetClassWOWWords</a></div><div class="ttdeci">LONG GetClassWOWWords(HINSTANCE hInstance, LPCTSTR pString)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00138">client/ntstubs.c:138</a></div></div>
<div class="ttc" id="aa02553_html"><div class="ttname"><a href="a02553.html">_HANDLEENTRY</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01165">user.h:1165</a></div></div>
<div class="ttc" id="aa00020_html_a3ee70b5f9f78e27746111f36524542d7"><div class="ttname"><a href="a00020.html#a3ee70b5f9f78e27746111f36524542d7">prescalls</a></div><div class="ttdeci">PRESCALLS prescalls</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00126">clglobal.c:126</a></div></div>
<div class="ttc" id="aa02533_html_ab7d6ab755a202c8facb089d6377ab9d7"><div class="ttname"><a href="a02533.html#ab7d6ab755a202c8facb089d6377ab9d7">tagSETCLIPBDATA::fGlobalHandle</a></div><div class="ttdeci">BOOL fGlobalHandle</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01117">user.h:1117</a></div></div>
<div class="ttc" id="aa03611_html_ab82910c4539db8debc07209b4b83d38f"><div class="ttname"><a href="a03611.html#ab82910c4539db8debc07209b4b83d38f">FillWindow</a></div><div class="ttdeci">BOOL FillWindow(HWND hwndBrush, HWND hwndPaint, HDC hdc, HBRUSH hbr)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00115">client/ntstubs.c:115</a></div></div>
<div class="ttc" id="aa00362_html_ab79fb1908c7da8bfc42396a59d16eb20"><div class="ttname"><a href="a00362.html#ab79fb1908c7da8bfc42396a59d16eb20">NtUserScrollWindowEx</a></div><div class="ttdeci">BOOL NtUserScrollWindowEx(IN HWND hwnd, IN int XAmount, IN int YAmount, IN CONST RECT *pRect OPTIONAL, IN CONST RECT *pClipRect OPTIONAL, IN HRGN hrgnUpdate, OUT LPRECT prcUpdate OPTIONAL, IN UINT flags)</div></div>
<div class="ttc" id="aa00020_html_a0ddb247b1528880d0d0060972eb19a11"><div class="ttname"><a href="a00020.html#a0ddb247b1528880d0d0060972eb19a11">ghdcGray</a></div><div class="ttdeci">HDC ghdcGray</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00100">clglobal.c:100</a></div></div>
<div class="ttc" id="aa00335_html_ad096793f5d5e556e0b51094e4776b11d"><div class="ttname"><a href="a00335.html#ad096793f5d5e556e0b51094e4776b11d">SFI_XXXMESSAGEBEEP</a></div><div class="ttdeci">#define SFI_XXXMESSAGEBEEP</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00019">cscall.h:19</a></div></div>
<div class="ttc" id="aa00362_html_a1a126aa946b044cf85f9a4ff5ae419de"><div class="ttname"><a href="a00362.html#a1a126aa946b044cf85f9a4ff5ae419de">NtUserGetThreadState</a></div><div class="ttdeci">DWORD NtUserGetThreadState(IN USERTHREADSTATECLASS ThreadState)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l06224">kernel/ntstubs.c:6224</a></div></div>
<div class="ttc" id="aa00335_html_a2007f3256942a03c901ca04db32bfade"><div class="ttname"><a href="a00335.html#a2007f3256942a03c901ca04db32bfade">SFI__SETCARETBLINKTIME</a></div><div class="ttdeci">#define SFI__SETCARETBLINKTIME</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00025">cscall.h:25</a></div></div>
<div class="ttc" id="aa00335_html_a2863b83c175deab1ae41f8f8408a5160"><div class="ttname"><a href="a00335.html#a2863b83c175deab1ae41f8f8408a5160">SFI__KILLSYSTEMTIMER</a></div><div class="ttdeci">#define SFI__KILLSYSTEMTIMER</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00017">cscall.h:17</a></div></div>
<div class="ttc" id="aa01793_html_a64a5e949b57cf19f94cb99705571cb4f"><div class="ttname"><a href="a01793.html#a64a5e949b57cf19f94cb99705571cb4f">_HANDLENODE::handleServer</a></div><div class="ttdeci">HANDLE handleServer</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00208">client.c:208</a></div></div>
<div class="ttc" id="aa00026_html_a9be26eaf6bb4ba7bef6f896caabfd8db"><div class="ttname"><a href="a00026.html#a9be26eaf6bb4ba7bef6f896caabfd8db">InnerGrayStringAorW</a></div><div class="ttdeci">BOOL InnerGrayStringAorW(HDC hdc, HBRUSH hbr, GRAYSTRINGPROC lpfnPrint, LPARAM lParam, int cch, int x, int y, int cx, int cy, BOOL bAnsi)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01492">client.c:1492</a></div></div>
<div class="ttc" id="aa00335_html_a2666a58866df7656a88500718837ddf5"><div class="ttname"><a href="a00335.html#a2666a58866df7656a88500718837ddf5">SFI_XXXREGISTERUSERHUNGAPPHANDLERS</a></div><div class="ttdeci">#define SFI_XXXREGISTERUSERHUNGAPPHANDLERS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00050">cscall.h:50</a></div></div>
<div class="ttc" id="aa00371_html_a4d87cc74e563dca72daafec9588cffa0"><div class="ttname"><a href="a00371.html#a4d87cc74e563dca72daafec9588cffa0">RIPERR2</a></div><div class="ttdeci">#define RIPERR2(idErr, flags, szFmt, p1, p2)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00121">winerrp.h:121</a></div></div>
<div class="ttc" id="aa03611_html_a387282161de07eb8f101949bd4977039"><div class="ttname"><a href="a03611.html#a387282161de07eb8f101949bd4977039">InitTask</a></div><div class="ttdeci">BOOL InitTask(UINT wVersion, LPCSTR pszAppName, DWORD hTaskWow, DWORD dwHotkey, DWORD idTask, DWORD dwX, DWORD dwY, DWORD dwXSize, DWORD dwYSize, WORD wShowWindow)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00178">client/ntstubs.c:178</a></div></div>
<div class="ttc" id="aa00026_html_a7a0f877b51caf12ba6afbafbdf6dfa88"><div class="ttname"><a href="a00026.html#a7a0f877b51caf12ba6afbafbdf6dfa88">RegisterClassWOWA</a></div><div class="ttdeci">ATOM WINAPI RegisterClassWOWA(WNDCLASSA *lpWndClass, LPDWORD pdwWOWstuff)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l02183">client.c:2183</a></div></div>
<div class="ttc" id="aa00026_html_adcd27bceb3499bb7ba614750b143c278"><div class="ttname"><a href="a00026.html#adcd27bceb3499bb7ba614750b143c278">CommonCreateWindowStation</a></div><div class="ttdeci">HWINSTA CommonCreateWindowStation(PUNICODE_STRING pstrName, DWORD dwReserved, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01787">client.c:1787</a></div></div>
<div class="ttc" id="aa03611_html_a6115159a3df3344553311b49547d1c93"><div class="ttname"><a href="a03611.html#a6115159a3df3344553311b49547d1c93">_CreateWindowEx</a></div><div class="ttdeci">HWND _CreateWindowEx(DWORD dwExStyle, LPCTSTR pClassName, LPCTSTR pWindowName, DWORD dwStyle, int x, int y, int nWidth, int nHeight, HWND hwndParent, HMENU hmenu, HANDLE hModule, LPVOID pParam, DWORD dwFlags, LPDWORD pWOW)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l01360">client/ntstubs.c:1360</a></div></div>
<div class="ttc" id="aa00335_html_a4e7f2435989de34d1ec2c7887be679b0"><div class="ttname"><a href="a00335.html#a4e7f2435989de34d1ec2c7887be679b0">SFI__SETDOUBLECLICKTIME</a></div><div class="ttdeci">#define SFI__SETDOUBLECLICKTIME</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00029">cscall.h:29</a></div></div>
<div class="ttc" id="aa00095_html_abbb7186e7025996fee1d72fabd41ea38"><div class="ttname"><a href="a00095.html#abbb7186e7025996fee1d72fabd41ea38">InternalCreateDialog</a></div><div class="ttdeci">HWND InternalCreateDialog(HANDLE hmod, LPDLGTEMPLATE lpdt, DWORD cb, HWND hwndOwner, DLGPROC lpfnDialog, LONG lParam, UINT fSCDLGFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a00095_source.html#l00176">dlgbegin.c:176</a></div></div>
<div class="ttc" id="aa00335_html_a6b2bb4ca810c0a33f77542c8d5450549"><div class="ttname"><a href="a00335.html#a6b2bb4ca810c0a33f77542c8d5450549">SFI__GETWINDOWCONTEXTHELPID</a></div><div class="ttdeci">#define SFI__GETWINDOWCONTEXTHELPID</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00060">cscall.h:60</a></div></div>
<div class="ttc" id="aa00365_html_a1a2ef1c363aa0787a8f8a7dde2a34aaf"><div class="ttname"><a href="a00365.html#a1a2ef1c363aa0787a8f8a7dde2a34aaf">PWND</a></div><div class="ttdeci">struct tagWND * PWND</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00059">user.h:59</a></div></div>
<div class="ttc" id="aa00047_html_add4bbc95aaee184c1ab221c5ad3e50f5"><div class="ttname"><a href="a00047.html#add4bbc95aaee184c1ab221c5ad3e50f5">WowServerLoadCreateCursorIcon</a></div><div class="ttdeci">HICON WowServerLoadCreateCursorIcon(HANDLE hmod, LPWSTR pszModName, DWORD dwExpWinVer, LPCWSTR lpName, DWORD cb, PVOID pResData, LPWSTR type, BOOL fClient)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l03994">clres.c:3994</a></div></div>
<div class="ttc" id="aa00362_html_a7e5a99967ed78c80cc1352431b6d41b3"><div class="ttname"><a href="a00362.html#a7e5a99967ed78c80cc1352431b6d41b3">NtUserCallHwndParamLock</a></div><div class="ttdeci">DWORD NtUserCallHwndParamLock(IN HWND hwnd, IN DWORD dwParam, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03394">kernel/ntstubs.c:3394</a></div></div>
<div class="ttc" id="aa00026_html_a763cdb0985d5d3030736a303a16c0809"><div class="ttname"><a href="a00026.html#a763cdb0985d5d3030736a303a16c0809">NSIZEPRELOAD</a></div><div class="ttdeci">#define NSIZEPRELOAD</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03376">client.c:3376</a></div></div>
<div class="ttc" id="aa00371_html_ad6b24a3d61abdc148c8751b5c5add686"><div class="ttname"><a href="a00371.html#ad6b24a3d61abdc148c8751b5c5add686">RIP_VERBOSE</a></div><div class="ttdeci">#define RIP_VERBOSE</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00030">winerrp.h:30</a></div></div>
<div class="ttc" id="aa03638_html_a4f9caa22ed529d60b842daca58968a5d"><div class="ttname"><a href="a03638.html#a4f9caa22ed529d60b842daca58968a5d">MapDeviceName</a></div><div class="ttdeci">NTSTATUS MapDeviceName(LPCWSTR lpszDeviceName, PUNICODE_STRING pstrDeviceName, BOOL bAnsi)</div><div class="ttdef"><b>Definition:</b> <a href="a03638_source.html#l00213">client/random.c:213</a></div></div>
<div class="ttc" id="aa03611_html_ac08320cb99ff87cc99ff553e36dc1616"><div class="ttname"><a href="a03611.html#ac08320cb99ff87cc99ff553e36dc1616">ToUnicode</a></div><div class="ttdeci">int ToUnicode(UINT wVirtKey, UINT wScanCode, PBYTE pKeyState, LPWSTR pwszBuff, int cchBuff, UINT wFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l01101">client/ntstubs.c:1101</a></div></div>
<div class="ttc" id="aa01953_html_a7a3214fb07118e912fafb284270e19b3"><div class="ttname"><a href="a01953.html#a7a3214fb07118e912fafb284270e19b3">_RESCALLS::pfnSizeofResource</a></div><div class="ttdeci">PFNSIZEOF pfnSizeofResource</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01093">usercli.h:1093</a></div></div>
<div class="ttc" id="aa00047_html_acd298466f31ea6f88b8c916f8f53062a"><div class="ttname"><a href="a00047.html#acd298466f31ea6f88b8c916f8f53062a">GetIconInfo</a></div><div class="ttdeci">BOOL WINAPI GetIconInfo(HICON hicon, PICONINFO piconinfo)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l01278">clres.c:1278</a></div></div>
<div class="ttc" id="aa03611_html_aac62c266c9bae1d384846a7f7182a4ec"><div class="ttname"><a href="a03611.html#aac62c266c9bae1d384846a7f7182a4ec">ConvertMemHandle</a></div><div class="ttdeci">HANDLE ConvertMemHandle(HANDLE hData, UINT cbNULL)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00219">client/ntstubs.c:219</a></div></div>
<div class="ttc" id="aa00026_html_a42e773ebcf36c0a3b2404ea7f4a4cb6e"><div class="ttname"><a href="a00026.html#a42e773ebcf36c0a3b2404ea7f4a4cb6e">gphn</a></div><div class="ttdeci">PHANDLENODE gphn</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00214">client.c:214</a></div></div>
<div class="ttc" id="aa00335_html_ae824c5e4480ee6702983324ef6281b9e"><div class="ttname"><a href="a00335.html#ae824c5e4480ee6702983324ef6281b9e">SFI__GETKEYBOARDTYPE</a></div><div class="ttdeci">#define SFI__GETKEYBOARDTYPE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00012">cscall.h:12</a></div></div>
<div class="ttc" id="aa00362_html_a56e26ea1aa0f35eac3ed483a63599719"><div class="ttname"><a href="a00362.html#a56e26ea1aa0f35eac3ed483a63599719">NtUserScrollDC</a></div><div class="ttdeci">BOOL NtUserScrollDC(IN HDC hDC, IN int dx, IN int dy, IN CONST RECT *lprcScroll OPTIONAL, IN CONST RECT *lprcClip OPTIONAL, IN HRGN hrgnUpdate, OUT LPRECT lprcUpdate OPTIONAL)</div></div>
<div class="ttc" id="aa00365_html_a422181d432442f3ca223ed68ff5585fb"><div class="ttname"><a href="a00365.html#a422181d432442f3ca223ed68ff5585fb">RtlMBMessageWParamCharToWCS</a></div><div class="ttdeci">BOOL RtlMBMessageWParamCharToWCS(DWORD msg, PDWORD pWParam)</div><div class="ttdef"><b>Definition:</b> <a href="a00932_source.html#l00442">chartran.c:442</a></div></div>
<div class="ttc" id="aa00026_html_abcd53e1f447bf113f860c89d2bfe25d9"><div class="ttname"><a href="a00026.html#abcd53e1f447bf113f860c89d2bfe25d9">NSZKLKEY</a></div><div class="ttdeci">#define NSZKLKEY</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03411">client.c:3411</a></div></div>
<div class="ttc" id="aa00335_html_adc079dfbd8348e849730494c7c9d1b11"><div class="ttname"><a href="a00335.html#adc079dfbd8348e849730494c7c9d1b11">SFI__BEGINDEFERWINDOWPOS</a></div><div class="ttdeci">#define SFI__BEGINDEFERWINDOWPOS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00001">cscall.h:1</a></div></div>
<div class="ttc" id="aa00020_html_ae5397944cba1022434bf17359cf02720"><div class="ttname"><a href="a00020.html#ae5397944cba1022434bf17359cf02720">pfnLocalAlloc</a></div><div class="ttdeci">PFNLALLOC pfnLocalAlloc</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00128">clglobal.c:128</a></div></div>
<div class="ttc" id="aa02477_html_acbf48a5d29178c49f4dd41065b66ed17"><div class="ttname"><a href="a02477.html#acbf48a5d29178c49f4dd41065b66ed17">_CLIENTINFO::ulClientDelta</a></div><div class="ttdeci">ULONG ulClientDelta</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00380">user.h:380</a></div></div>
<div class="ttc" id="aa00362_html_a78038279c01dd1906e89f78bfe2d32fe"><div class="ttname"><a href="a00362.html#a78038279c01dd1906e89f78bfe2d32fe">NtUserCreateDesktop</a></div><div class="ttdeci">HDESK NtUserCreateDesktop(IN POBJECT_ATTRIBUTES pObja, IN PUNICODE_STRING pstrDevice, IN LPDEVMODEW pDevmode, IN DWORD dwFlags, IN ACCESS_MASK amRequest)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l00821">kernel/ntstubs.c:821</a></div></div>
<div class="ttc" id="aa00200_html_a47a4c70a9495eab3183ca740118195f9"><div class="ttname"><a href="a00200.html#a47a4c70a9495eab3183ca740118195f9">TileWindows</a></div><div class="ttdeci">WORD TileWindows(HWND hwndParent, UINT flags, CONST RECT *lpRect, UINT chwnd, CONST HWND *ahwnd)</div><div class="ttdef"><b>Definition:</b> <a href="a00200_source.html#l00849">mdiwin.c:849</a></div></div>
<div class="ttc" id="aa03611_html_aab0cc30f737042cd8237de7cddea6557"><div class="ttname"><a href="a03611.html#aab0cc30f737042cd8237de7cddea6557">CreateLocalMemHandle</a></div><div class="ttdeci">HANDLE CreateLocalMemHandle(HANDLE hMem)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00260">client/ntstubs.c:260</a></div></div>
<div class="ttc" id="aa00362_html_a8f3ab19504904b931b9511a403b28f3a"><div class="ttname"><a href="a00362.html#a8f3ab19504904b931b9511a403b28f3a">NtUserCallHwnd</a></div><div class="ttdeci">DWORD NtUserCallHwnd(IN HWND hwnd, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03284">kernel/ntstubs.c:3284</a></div></div>
<div class="ttc" id="aa00335_html_ac514f2b7f4486f41196a3d355fac3193"><div class="ttname"><a href="a00335.html#ac514f2b7f4486f41196a3d355fac3193">SFI__CREATEMENU</a></div><div class="ttdeci">#define SFI__CREATEMENU</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00004">cscall.h:4</a></div></div>
<div class="ttc" id="aa00026_html_a82f3484223376f86b3f6e2677fd23e0a"><div class="ttname"><a href="a00026.html#a82f3484223376f86b3f6e2677fd23e0a">wKbdLocaleSafety</a></div><div class="ttdeci">CONST UINT wKbdLocaleSafety</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00027">client.c:27</a></div></div>
<div class="ttc" id="aa00371_html_a162a73e20dfabca084a3ebb4581631a8"><div class="ttname"><a href="a00371.html#a162a73e20dfabca084a3ebb4581631a8">UserAssert</a></div><div class="ttdeci">#define UserAssert(exp)</div><div class="ttdef"><b>Definition:</b> <a href="a00950_source.html#l00117">usersrv.h:117</a></div></div>
<div class="ttc" id="aa00371_html_afa5f32de88404289ec03cd2c0e61e94f"><div class="ttname"><a href="a00371.html#afa5f32de88404289ec03cd2c0e61e94f">RIP_ERROR</a></div><div class="ttdeci">#define RIP_ERROR</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00028">winerrp.h:28</a></div></div>
<div class="ttc" id="aa00371_html_a31aafffb49dfe98bdc749c9b35c90162"><div class="ttname"><a href="a00371.html#a31aafffb49dfe98bdc749c9b35c90162">RIPMSG1</a></div><div class="ttdeci">#define RIPMSG1(flags, szFmt, p1)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00132">winerrp.h:132</a></div></div>
<div class="ttc" id="aa00341_html_a9d87ba42d1eed654ee04b018be9ea0b4"><div class="ttname"><a href="a00341.html#a9d87ba42d1eed654ee04b018be9ea0b4">IS_IME_KBDLAYOUT</a></div><div class="ttdeci">#define IS_IME_KBDLAYOUT(hkl)</div><div class="ttdef"><b>Definition:</b> <a href="a00341_source.html#l00045">immstruc.h:45</a></div></div>
<div class="ttc" id="aa00026_html_aa6e0925d19bd41f4b0be4a22d97e2031"><div class="ttname"><a href="a00026.html#aa6e0925d19bd41f4b0be4a22d97e2031">WowGetDefWindowProcBits</a></div><div class="ttdeci">WORD WowGetDefWindowProcBits(PBYTE pDefWindowProcBits, WORD cbDefWindowProcBits)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l02203">client.c:2203</a></div></div>
<div class="ttc" id="aa00362_html_a7186dd2e5b3cb366a6aa11b1d2fa6f83"><div class="ttname"><a href="a00362.html#a7186dd2e5b3cb366a6aa11b1d2fa6f83">NtUserWaitForInputIdle</a></div><div class="ttdeci">DWORD NtUserWaitForInputIdle(IN DWORD idProcess, IN DWORD dwMilliseconds, IN BOOL fSharedWow)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05117">kernel/ntstubs.c:5117</a></div></div>
<div class="ttc" id="aa00362_html_a5aaa23bf9e9f7a5135d6b7444f6581c7"><div class="ttname"><a href="a00362.html#a5aaa23bf9e9f7a5135d6b7444f6581c7">NtUserCreateCaret</a></div><div class="ttdeci">BOOL NtUserCreateCaret(IN HWND hwnd, IN HBITMAP hBitmap, IN int nWidth, IN int nHeight)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05177">kernel/ntstubs.c:5177</a></div></div>
<div class="ttc" id="aa00026_html_ab9a6e7c8c7a31497ad2aab59eccdbfe6"><div class="ttname"><a href="a00026.html#ab9a6e7c8c7a31497ad2aab59eccdbfe6">CCH_KL_LIBNAME</a></div><div class="ttdeci">#define CCH_KL_LIBNAME</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00029">client.c:29</a></div></div>
<div class="ttc" id="aa00335_html_af798c4ee5616d0de9e396ffb72e44ec7"><div class="ttname"><a href="a00335.html#af798c4ee5616d0de9e396ffb72e44ec7">SFI__SETCARETPOS</a></div><div class="ttdeci">#define SFI__SETCARETPOS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00026">cscall.h:26</a></div></div>
<div class="ttc" id="aa00026_html_a1bf5f7e9d7c16c57be8b9132131866be"><div class="ttname"><a href="a00026.html#a1bf5f7e9d7c16c57be8b9132131866be">WowServerLoadCreateMenu</a></div><div class="ttdeci">HMENU WowServerLoadCreateMenu(HANDLE hMod, LPTSTR lpName, CONST LPMENUTEMPLATE pmt, DWORD cb, BOOL fCallClient)</div></div>
<div class="ttc" id="aa00335_html_a5786001e4f28fce7e9b70e197cfcb5a0"><div class="ttname"><a href="a00335.html#a5786001e4f28fce7e9b70e197cfcb5a0">SFI__GETKEYBOARDLAYOUT</a></div><div class="ttdeci">#define SFI__GETKEYBOARDLAYOUT</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00011">cscall.h:11</a></div></div>
<div class="ttc" id="aa00335_html_a8918a81291d27a57e265225ad7ba4d2d"><div class="ttname"><a href="a00335.html#a8918a81291d27a57e265225ad7ba4d2d">SFI_XXXVALIDATERGN</a></div><div class="ttdeci">#define SFI_XXXVALIDATERGN</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00058">cscall.h:58</a></div></div>
<div class="ttc" id="aa01793_html_aa5a7e5bd7246c2107663851ab95ed5d7"><div class="ttname"><a href="a01793.html#aa5a7e5bd7246c2107663851ab95ed5d7">_HANDLENODE::handleClient</a></div><div class="ttdeci">HANDLE handleClient</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00209">client.c:209</a></div></div>
<div class="ttc" id="aa00335_html_a4d7dd9f86c5a4b717e6085c060058b86"><div class="ttname"><a href="a00335.html#a4d7dd9f86c5a4b717e6085c060058b86">SFI_XXXGETINPUTDESKTOP</a></div><div class="ttdeci">#define SFI_XXXGETINPUTDESKTOP</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00010">cscall.h:10</a></div></div>
<div class="ttc" id="aa00335_html_ae794df8019793b80a993235005d5552c"><div class="ttname"><a href="a00335.html#ae794df8019793b80a993235005d5552c">SFI_XXXOPENICON</a></div><div class="ttdeci">#define SFI_XXXOPENICON</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00045">cscall.h:45</a></div></div>
<div class="ttc" id="aa00362_html_a99be647f71492a2a51f273bef069caf4"><div class="ttname"><a href="a00362.html#a99be647f71492a2a51f273bef069caf4">NtUserGetProcessWindowStation</a></div><div class="ttdeci">HWINSTA NtUserGetProcessWindowStation(VOID)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l00810">kernel/ntstubs.c:810</a></div></div>
<div class="ttc" id="aa02477_html_a3c194fec8e59a3c52d6c3018cff46ae9"><div class="ttname"><a href="a02477.html#a3c194fec8e59a3c52d6c3018cff46ae9">_CLIENTINFO::hEventQueueClient</a></div><div class="ttdeci">HANDLE hEventQueueClient</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00375">user.h:375</a></div></div>
<div class="ttc" id="aa00020_html_a397f068a1dce0ce985858e7c33969010"><div class="ttname"><a href="a00020.html#a397f068a1dce0ce985858e7c33969010">gcsClipboard</a></div><div class="ttdeci">CRITICAL_SECTION gcsClipboard</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00097">clglobal.c:97</a></div></div>
<div class="ttc" id="aa00335_html_a2d17da853e2c31b9f23ca8eb24121472"><div class="ttname"><a href="a00335.html#a2d17da853e2c31b9f23ca8eb24121472">SFI__SETWINDOWCONTEXTHELPID</a></div><div class="ttdeci">#define SFI__SETWINDOWCONTEXTHELPID</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00061">cscall.h:61</a></div></div>
<div class="ttc" id="aa00347_html_a6e6030f7dc50fba8bffa4e89f9328c85"><div class="ttname"><a href="a00347.html#a6e6030f7dc50fba8bffa4e89f9328c85">PKBDTABLES</a></div><div class="ttdeci">struct tagKbdLayer * PKBDTABLES</div></div>
<div class="ttc" id="aa00335_html_a96a1cfa70389ebc5bac9a3c8b1193883"><div class="ttname"><a href="a00335.html#a96a1cfa70389ebc5bac9a3c8b1193883">SFI_XXXSETFOREGROUNDWINDOW</a></div><div class="ttdeci">#define SFI_XXXSETFOREGROUNDWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00052">cscall.h:52</a></div></div>
<div class="ttc" id="aa00362_html_a00bbf48f9220b8cc246f0d2b2bea280c"><div class="ttname"><a href="a00362.html#a00bbf48f9220b8cc246f0d2b2bea280c">NtUserChildWindowFromPointEx</a></div><div class="ttdeci">HWND NtUserChildWindowFromPointEx(IN HWND hwndParent, IN POINT point, IN UINT flags)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l02668">kernel/ntstubs.c:2668</a></div></div>
<div class="ttc" id="aa00938_html_af342e0e9b49a1c8b503ea5d49c6c863d"><div class="ttname"><a href="a00938.html#af342e0e9b49a1c8b503ea5d49c6c863d">wsprintfW</a></div><div class="ttdeci">int WINAPIV wsprintfW(LPWSTR lpOut, LPCWSTR lpFmt,...)</div><div class="ttdef"><b>Definition:</b> <a href="a00938_source.html#l00963">wsprintf.c:963</a></div></div>
<div class="ttc" id="aa01953_html_a61df4960e959076dce501822eb8411e3"><div class="ttname"><a href="a01953.html#a61df4960e959076dce501822eb8411e3">_RESCALLS::pfnFindResourceExA</a></div><div class="ttdeci">PFNFINDA pfnFindResourceExA</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01087">usercli.h:1087</a></div></div>
<div class="ttc" id="aa02529_html"><div class="ttname"><a href="a02529.html">tagGETCLIPBDATA</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01103">user.h:1103</a></div></div>
<div class="ttc" id="aa02553_html_a933e5c6adafeaf9086a99630bf9ccd5e"><div class="ttname"><a href="a02553.html#a933e5c6adafeaf9086a99630bf9ccd5e">_HANDLEENTRY::wUniq</a></div><div class="ttdeci">WORD wUniq</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01170">user.h:1170</a></div></div>
<div class="ttc" id="aa00362_html_a91efe5874356d4182da4017faa8a2af3"><div class="ttname"><a href="a00362.html#a91efe5874356d4182da4017faa8a2af3">NtUserCreateWindowStation</a></div><div class="ttdeci">HWINSTA NtUserCreateWindowStation(IN POBJECT_ATTRIBUTES pObja, IN DWORD dwReserved, IN ACCESS_MASK amRequest, IN HANDLE hKbdLayoutFile, IN DWORD offTable, IN PUNICODE_STRING pstrKLID, IN UINT uKbdInputLocale)</div></div>
<div class="ttc" id="aa00263_html_ae1ceb717793b21c250225fce6cb4619a"><div class="ttname"><a href="a00263.html#ae1ceb717793b21c250225fce6cb4619a">_AdjustWindowRectEx</a></div><div class="ttdeci">BOOL _AdjustWindowRectEx(LPRECT lprc, LONG style, BOOL fMenu, DWORD dwExStyle)</div><div class="ttdef"><b>Definition:</b> <a href="a00263_source.html#l00550">winmgrc.c:550</a></div></div>
<div class="ttc" id="aa00026_html_ad0b7e26330f88a9b5fe86c7cc329d2c4"><div class="ttname"><a href="a00026.html#ad0b7e26330f88a9b5fe86c7cc329d2c4">szKLId</a></div><div class="ttdeci">CONST WCHAR szKLId[]</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03410">client.c:3410</a></div></div>
<div class="ttc" id="aa02581_html_a79d8579e0cf1a8fb985bc709e08f61ac"><div class="ttname"><a href="a02581.html#a79d8579e0cf1a8fb985bc709e08f61ac">tagWND::hrgnUpdate</a></div><div class="ttdeci">HRGN hrgnUpdate</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01406">user.h:1406</a></div></div>
<div class="ttc" id="aa02609_html_a009dc3c70977b9fd09afe23eb4232f76"><div class="ttname"><a href="a02609.html#a009dc3c70977b9fd09afe23eb4232f76">tagDESKTOPINFO::spwndProgman</a></div><div class="ttdeci">struct tagWND * spwndProgman</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01610">user.h:1610</a></div></div>
<div class="ttc" id="aa00362_html_a5b4df910122c30dea0ccbaf23dc50f44"><div class="ttname"><a href="a00362.html#a5b4df910122c30dea0ccbaf23dc50f44">NtUserInvalidateRgn</a></div><div class="ttdeci">BOOL NtUserInvalidateRgn(IN HWND hwnd, IN HRGN hRgn, IN BOOL bErase)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05362">kernel/ntstubs.c:5362</a></div></div>
<div class="ttc" id="aa00335_html_af12693680edbb55b940ef7a4c11a162e"><div class="ttname"><a href="a00335.html#af12693680edbb55b940ef7a4c11a162e">SFI_XXXEMPTYCLIPBOARD</a></div><div class="ttdeci">#define SFI_XXXEMPTYCLIPBOARD</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00042">cscall.h:42</a></div></div>
<div class="ttc" id="aa00026_html_a0b9f32df129dc236ccddbb022b51842f"><div class="ttname"><a href="a00026.html#a0b9f32df129dc236ccddbb022b51842f">hCachedHKL</a></div><div class="ttdeci">static HKL hCachedHKL</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00937">client.c:937</a></div></div>
<div class="ttc" id="aa00362_html_a04cb7e946d3c8177afb71b96528654b7"><div class="ttname"><a href="a00362.html#a04cb7e946d3c8177afb71b96528654b7">NtUserCallHwndOpt</a></div><div class="ttdeci">DWORD NtUserCallHwndOpt(IN HWND hwnd, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03331">kernel/ntstubs.c:3331</a></div></div>
<div class="ttc" id="aa00362_html_a101b17b72b59c52a93bbf6835fed9fcb"><div class="ttname"><a href="a00362.html#a101b17b72b59c52a93bbf6835fed9fcb">NtUserSetShellWindowEx</a></div><div class="ttdeci">BOOL NtUserSetShellWindowEx(IN HWND hwnd, IN HWND hwndBkGnd)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01852">kernel/ntstubs.c:1852</a></div></div>
<div class="ttc" id="aa00026_html_a28b722aaf4a4881ff619be64522129e1"><div class="ttname"><a href="a00026.html#a28b722aaf4a4881ff619be64522129e1">CommonOpenWindowStation</a></div><div class="ttdeci">HWINSTA CommonOpenWindowStation(PUNICODE_STRING pstrName, BOOL fInherit, ACCESS_MASK amRequest)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01895">client.c:1895</a></div></div>
<div class="ttc" id="aa00047_html_ad201115615b1fdd45228c5f81c4364d3"><div class="ttname"><a href="a00047.html#ad201115615b1fdd45228c5f81c4364d3">LookupIconIdFromDirectoryEx</a></div><div class="ttdeci">int WINAPI LookupIconIdFromDirectoryEx(PBYTE presbits, BOOL fIcon, int cxDesired, int cyDesired, UINT LR_flags)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l01378">clres.c:1378</a></div></div>
<div class="ttc" id="aa01953_html_a286ed7fd91d46c0627d285269c52b80a"><div class="ttname"><a href="a01953.html#a286ed7fd91d46c0627d285269c52b80a">_RESCALLS::pfnFindResourceExW</a></div><div class="ttdeci">PFNFINDW pfnFindResourceExW</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01088">usercli.h:1088</a></div></div>
<div class="ttc" id="aa00026_html_a6c4833589a236b8903a861fe19222918"><div class="ttname"><a href="a00026.html#a6c4833589a236b8903a861fe19222918">CommonOpenDesktop</a></div><div class="ttdeci">HDESK CommonOpenDesktop(PUNICODE_STRING pstrDesktop, DWORD dwFlags, BOOL fInherit, ACCESS_MASK amRequest)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l02122">client.c:2122</a></div></div>
<div class="ttc" id="aa00020_html_af2ec095af34bd59496591af260d0c652"><div class="ttname"><a href="a00020.html#af2ec095af34bd59496591af260d0c652">pfnLocalUnlock</a></div><div class="ttdeci">PFNLUNLOCK pfnLocalUnlock</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00131">clglobal.c:131</a></div></div>
<div class="ttc" id="aa02533_html"><div class="ttname"><a href="a02533.html">tagSETCLIPBDATA</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01115">user.h:1115</a></div></div>
<div class="ttc" id="aa00371_html_ae61d954062a9ece52e350e54cad9a23d"><div class="ttname"><a href="a00371.html#ae61d954062a9ece52e350e54cad9a23d">RIPERR0</a></div><div class="ttdeci">#define RIPERR0(idErr, flags, szFmt)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00119">winerrp.h:119</a></div></div>
<div class="ttc" id="aa00362_html_a04729cf183b6f13db368ace3d85f2939"><div class="ttname"><a href="a00362.html#a04729cf183b6f13db368ace3d85f2939">NtUserGetUpdateRgn</a></div><div class="ttdeci">int NtUserGetUpdateRgn(IN HWND hwnd, IN HRGN hRgn, IN BOOL bErase)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05299">kernel/ntstubs.c:5299</a></div></div>
<div class="ttc" id="aa00362_html_a94525b33a85c016c6a0fc00a8dce5402"><div class="ttname"><a href="a00362.html#a94525b33a85c016c6a0fc00a8dce5402">NtUserOpenWindowStation</a></div><div class="ttdeci">HWINSTA NtUserOpenWindowStation(IN POBJECT_ATTRIBUTES pObja, IN ACCESS_MASK amRequest)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l00696">kernel/ntstubs.c:696</a></div></div>
<div class="ttc" id="aa02609_html_afd6d95bc90bb896f09f7bbf1cc658577"><div class="ttname"><a href="a02609.html#afd6d95bc90bb896f09f7bbf1cc658577">tagDESKTOPINFO::spwndTaskman</a></div><div class="ttdeci">struct tagWND * spwndTaskman</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01609">user.h:1609</a></div></div>
<div class="ttc" id="aa00020_html_a51859450ad5a4dfe34fed9925b024c89"><div class="ttname"><a href="a00020.html#a51859450ad5a4dfe34fed9925b024c89">pfnInitDlgCallback</a></div><div class="ttdeci">PFNINITDLGCB pfnInitDlgCallback</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00135">clglobal.c:135</a></div></div>
<div class="ttc" id="aa00086_html_ac15ecf31fbeaa6e816f2f916d4ed2371"><div class="ttname"><a href="a00086.html#ac15ecf31fbeaa6e816f2f916d4ed2371">FreeDDEData</a></div><div class="ttdeci">VOID FreeDDEData(HANDLE hDDE, BOOL fIgnorefRelease, BOOL fFreeTruelyGlobalObjects)</div><div class="ttdef"><b>Definition:</b> <a href="a00158_source.html#l00481">hdata.c:481</a></div></div>
<div class="ttc" id="aa00362_html_a8df26676457554e62cdb7b55d5cb2c46"><div class="ttname"><a href="a00362.html#a8df26676457554e62cdb7b55d5cb2c46">NtUserGetObjectInformation</a></div><div class="ttdeci">BOOL NtUserGetObjectInformation(IN HANDLE hObject, IN int nIndex, OUT PVOID pvInfo, IN DWORD nLength, IN LPDWORD pnLengthNeeded)</div></div>
<div class="ttc" id="aa00020_html_ac02f0141c423acd033ecdd2a757a3cc1"><div class="ttname"><a href="a00020.html#ac02f0141c423acd033ecdd2a757a3cc1">gSharedInfo</a></div><div class="ttdeci">SHAREDINFO gSharedInfo</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00040">clglobal.c:40</a></div></div>
<div class="ttc" id="aa00020_html_a13a3ee7c55bf8c846ebd91449034b143"><div class="ttname"><a href="a00020.html#a13a3ee7c55bf8c846ebd91449034b143">pfn16GlobalAlloc</a></div><div class="ttdeci">PFN16GALLOC pfn16GlobalAlloc</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00136">clglobal.c:136</a></div></div>
<div class="ttc" id="aa00026_html_a65777ad273ebbc9f15685157f4634b3e"><div class="ttname"><a href="a00026.html#a65777ad273ebbc9f15685157f4634b3e">LoadKeyboardLayoutW</a></div><div class="ttdeci">HKL LoadKeyboardLayoutW(LPCWSTR lpszKLName, UINT uFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03678">client.c:3678</a></div></div>
<div class="ttc" id="aa00362_html_a5faa2257365c8afc643c6488dc44f618"><div class="ttname"><a href="a00362.html#a5faa2257365c8afc643c6488dc44f618">NtUserCallOneParam</a></div><div class="ttdeci">DWORD NtUserCallOneParam(IN DWORD dwParam, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03249">kernel/ntstubs.c:3249</a></div></div>
<div class="ttc" id="aa00335_html_af879649bddfeaac7e49e891fff78a9b1"><div class="ttname"><a href="a00335.html#af879649bddfeaac7e49e891fff78a9b1">SFI_SETWINDOWSTATE</a></div><div class="ttdeci">#define SFI_SETWINDOWSTATE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00030">cscall.h:30</a></div></div>
<div class="ttc" id="aa00335_html_a9ef21632e5aec277e7bddba6c3756638"><div class="ttname"><a href="a00335.html#a9ef21632e5aec277e7bddba6c3756638">SFI__RELEASEDC</a></div><div class="ttdeci">#define SFI__RELEASEDC</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00023">cscall.h:23</a></div></div>
<div class="ttc" id="aa00020_html_a5936fa3e640c0cdc177e305372731783"><div class="ttname"><a href="a00020.html#a5936fa3e640c0cdc177e305372731783">gcyGray</a></div><div class="ttdeci">int gcyGray</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00104">clglobal.c:104</a></div></div>
<div class="ttc" id="aa00020_html_afc201f87e78a533219c78af8c97ce005"><div class="ttname"><a href="a00020.html#afc201f87e78a533219c78af8c97ce005">pfn16GlobalFree</a></div><div class="ttdeci">PFN16GFREE pfn16GlobalFree</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00137">clglobal.c:137</a></div></div>
<div class="ttc" id="aa00026_html_aa9ce9abee64d83ba417fcae251e0301d"><div class="ttname"><a href="a00026.html#aa9ce9abee64d83ba417fcae251e0301d">GetFullUserHandle</a></div><div class="ttdeci">DWORD GetFullUserHandle(WORD wHandle)</div><div class="ttdef"><b>Definition:</b> <a href="a00155_source.html#l00293">handles.c:293</a></div></div>
<div class="ttc" id="aa00026_html_a36cf1c3bd6b43137f1fe76c1e0c0ed71"><div class="ttname"><a href="a00026.html#a36cf1c3bd6b43137f1fe76c1e0c0ed71">MsgWaitForMultipleObjectsEx</a></div><div class="ttdeci">DWORD WINAPI MsgWaitForMultipleObjectsEx(DWORD nCount, LPHANDLE pHandles, DWORD dwMilliseconds, DWORD dwWakeMask, DWORD dwFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01375">client.c:1375</a></div></div>
<div class="ttc" id="aa00335_html_a645eb7af69b69bce5096b81d6c58c2b0"><div class="ttname"><a href="a00335.html#a645eb7af69b69bce5096b81d6c58c2b0">SFI_XXXRELEASECAPTURE</a></div><div class="ttdeci">#define SFI_XXXRELEASECAPTURE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00022">cscall.h:22</a></div></div>
<div class="ttc" id="aa03611_html_a231fdf82918c11fa7049f9485fc1fb06"><div class="ttname"><a href="a03611.html#a231fdf82918c11fa7049f9485fc1fb06">_LoadKeyboardLayoutEx</a></div><div class="ttdeci">HKL _LoadKeyboardLayoutEx(HANDLE hFile, UINT offTable, HKL hkl, LPCTSTR pwszKL, UINT KbdInputLocale, UINT Flags)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l01528">client/ntstubs.c:1528</a></div></div>
<div class="ttc" id="aa02529_html_af340d14d09f076aadc0175aa7220bbfd"><div class="ttname"><a href="a02529.html#af340d14d09f076aadc0175aa7220bbfd">tagGETCLIPBDATA::uFmtRet</a></div><div class="ttdeci">UINT uFmtRet</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01105">user.h:1105</a></div></div>
<div class="ttc" id="aa00335_html_ac7cf3acf1f797c86a49cb4d6388b85ad"><div class="ttname"><a href="a00335.html#ac7cf3acf1f797c86a49cb4d6388b85ad">SFI__REGISTERSYSTEMTHREAD</a></div><div class="ttdeci">#define SFI__REGISTERSYSTEMTHREAD</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00059">cscall.h:59</a></div></div>
<div class="ttc" id="aa00026_html_afb6cef9b9912c174a04f435c3d289591"><div class="ttname"><a href="a00026.html#afb6cef9b9912c174a04f435c3d289591">GETCCP_SIZE</a></div><div class="ttdeci">#define GETCCP_SIZE</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00670">client.c:670</a></div></div>
<div class="ttc" id="aa00362_html_ac62ce401fdf02c98865a290faebec897"><div class="ttname"><a href="a00362.html#ac62ce401fdf02c98865a290faebec897">NtUserExcludeUpdateRgn</a></div><div class="ttdeci">int NtUserExcludeUpdateRgn(IN HDC hDC, IN HWND hwnd)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05230">kernel/ntstubs.c:5230</a></div></div>
<div class="ttc" id="aa00020_html_ac82dd12ceaab97a1144204557ed02857"><div class="ttname"><a href="a00020.html#ac82dd12ceaab97a1144204557ed02857">pfnWowEditNextWord</a></div><div class="ttdeci">PFNWOWEDITNEXTWORD pfnWowEditNextWord</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00141">clglobal.c:141</a></div></div>
<div class="ttc" id="aa00335_html_a828e1ae8ab3eed8c24b8425451c5d392"><div class="ttname"><a href="a00335.html#a828e1ae8ab3eed8c24b8425451c5d392">SFI_XXXLW_LOADFONTS</a></div><div class="ttdeci">#define SFI_XXXLW_LOADFONTS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00037">cscall.h:37</a></div></div>
<div class="ttc" id="aa00563_html_a074685e97e89d6aa2accdfcb82328699"><div class="ttname"><a href="a00563.html#a074685e97e89d6aa2accdfcb82328699">DWORD</a></div><div class="ttdeci">ddeml v[i&lt; inst &gt;][t&lt; type &gt;][hObj|pObj] Dump DDEML state information ddeml lists all ddeml instances for this process n ddeml t&lt; type &gt; lists all ddeml objects of the given type n n assumes link is first DWORD</div><div class="ttdef"><b>Definition:</b> <a href="a00563_source.html#l00175">exts.h:175</a></div></div>
<div class="ttc" id="aa00335_html_a1651981d8baab438f4063d4f8477a06f"><div class="ttname"><a href="a00335.html#a1651981d8baab438f4063d4f8477a06f">SFI__WINDOWFROMDC</a></div><div class="ttdeci">#define SFI__WINDOWFROMDC</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00035">cscall.h:35</a></div></div>
<div class="ttc" id="aa00362_html_a4507b6c8a6a331fb5cb4da55185cfa50"><div class="ttname"><a href="a00362.html#a4507b6c8a6a331fb5cb4da55185cfa50">NtUserGetInputEvent</a></div><div class="ttdeci">HANDLE NtUserGetInputEvent(IN DWORD dwWakeMask)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l02260">kernel/ntstubs.c:2260</a></div></div>
<div class="ttc" id="aa00362_html_a97ea52174705d791899a9df860aab676"><div class="ttname"><a href="a00362.html#a97ea52174705d791899a9df860aab676">NtUserSetWindowPos</a></div><div class="ttdeci">BOOL NtUserSetWindowPos(IN HWND hwnd, IN HWND hwndInsertAfter, IN int x, IN int y, IN int cx, IN int cy, IN UINT dwFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01716">kernel/ntstubs.c:1716</a></div></div>
<div class="ttc" id="aa00026_html_abfee4a9912184ce8c841fe748dcaf1ee"><div class="ttname"><a href="a00026.html#abfee4a9912184ce8c841fe748dcaf1ee">DrawIconEx</a></div><div class="ttdeci">BOOL DrawIconEx(HDC hdc, int x, int y, HICON hIcon, int cx, int cy, UINT istepIfAniCur, HBRUSH hbrFlickerFreeDraw, UINT diFlags)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01049">client.c:1049</a></div></div>
<div class="ttc" id="aa00362_html_a4587e82182c73aeb97a7f528b5dfdaa0"><div class="ttname"><a href="a00362.html#a4587e82182c73aeb97a7f528b5dfdaa0">NtUserCallHwndParam</a></div><div class="ttdeci">DWORD NtUserCallHwndParam(IN HWND hwnd, IN DWORD dwParam, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03370">kernel/ntstubs.c:3370</a></div></div>
<div class="ttc" id="aa00362_html_a384a73468194dd5fff52fb40eb199bd5"><div class="ttname"><a href="a00362.html#a384a73468194dd5fff52fb40eb199bd5">NtUserCallTwoParam</a></div><div class="ttdeci">DWORD NtUserCallTwoParam(DWORD dwParam1, DWORD dwParam2, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03352">kernel/ntstubs.c:3352</a></div></div>
<div class="ttc" id="aa01953_html_a64594fc7242e7ba2c98952f16c39f32d"><div class="ttname"><a href="a01953.html#a64594fc7242e7ba2c98952f16c39f32d">_RESCALLS::pfnLockResource</a></div><div class="ttdeci">PFNLOCK pfnLockResource</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01090">usercli.h:1090</a></div></div>
<div class="ttc" id="aa02477_html_a76d4881aa4c15330103e83a80e6b5dc7"><div class="ttname"><a href="a02477.html#a76d4881aa4c15330103e83a80e6b5dc7">_CLIENTINFO::pDeskInfo</a></div><div class="ttdeci">PDESKTOPINFO pDeskInfo</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00379">user.h:379</a></div></div>
<div class="ttc" id="aa02469_html_aff6602772c3f294355b9662022fcb78e"><div class="ttname"><a href="a02469.html#aff6602772c3f294355b9662022fcb78e">_DRAWICONEXDATA::hbmMask</a></div><div class="ttdeci">HBITMAP hbmMask</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00334">user.h:334</a></div></div>
<div class="ttc" id="aa00371_html_ade1c433448844e5ca2b42e3917d013a8"><div class="ttname"><a href="a00371.html#ade1c433448844e5ca2b42e3917d013a8">UserSetLastError</a></div><div class="ttdeci">VOID UserSetLastError(DWORD dwErrCode)</div><div class="ttdef"><b>Definition:</b> <a href="a03197_source.html#l00390">rtl/debug.c:390</a></div></div>
<div class="ttc" id="aa00362_html_abd6293054dfb58fa6bd91632b227cf11"><div class="ttname"><a href="a00362.html#abd6293054dfb58fa6bd91632b227cf11">NtUserWaitForMsgAndEvent</a></div><div class="ttdeci">BOOL NtUserWaitForMsgAndEvent(IN HANDLE hevent)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01109">kernel/ntstubs.c:1109</a></div></div>
<div class="ttc" id="aa00362_html_ae24172cf62c849b9111ca8b8ce4e7c66"><div class="ttname"><a href="a00362.html#ae24172cf62c849b9111ca8b8ce4e7c66">NtUserWOWCleanup</a></div><div class="ttdeci">BOOL NtUserWOWCleanup(IN HANDLE hInstance, IN DWORD hTaskWow, IN PNEMODULESEG SelList, IN DWORD nSel)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05845">kernel/ntstubs.c:5845</a></div></div>
<div class="ttc" id="aa02581_html_a860be5351f601ab541124507007056aa"><div class="ttname"><a href="a02581.html#a860be5351f601ab541124507007056aa">tagWND::hrgnClip</a></div><div class="ttdeci">HRGN hrgnClip</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01427">user.h:1427</a></div></div>
<div class="ttc" id="aa00362_html_ab33b0ec1ddba5c1d2b09e34b453d27ff"><div class="ttname"><a href="a00362.html#ab33b0ec1ddba5c1d2b09e34b453d27ff">NtUserYieldTask</a></div><div class="ttdeci">BOOL NtUserYieldTask(VOID)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l05528">kernel/ntstubs.c:5528</a></div></div>
<div class="ttc" id="aa00365_html_a2313d9960d832da75d595b73ff75d1dc"><div class="ttname"><a href="a00365.html#a2313d9960d832da75d595b73ff75d1dc">wcsncpycch</a></div><div class="ttdeci">DWORD wcsncpycch(LPWSTR pwsDest, LPCWSTR pwszSrc, DWORD cch)</div><div class="ttdef"><b>Definition:</b> <a href="a03650_source.html#l00146">rtl/random.c:146</a></div></div>
<div class="ttc" id="aa02581_html_a2778d611c2b27395e559c94d05732e1f"><div class="ttname"><a href="a02581.html#a2778d611c2b27395e559c94d05732e1f">tagWND::rcWindow</a></div><div class="ttdeci">RECT rcWindow</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01398">user.h:1398</a></div></div>
<div class="ttc" id="aa02581_html"><div class="ttname"><a href="a02581.html">tagWND</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01388">user.h:1388</a></div></div>
<div class="ttc" id="aa03218_html_aa4a3b004dd5a64b5e7d718f525a86db6"><div class="ttname"><a href="a03218.html#aa4a3b004dd5a64b5e7d718f525a86db6">IsMetaFile</a></div><div class="ttdeci">BOOL IsMetaFile(HDC hdc)</div><div class="ttdef"><b>Definition:</b> <a href="a03218_source.html#l00027">client/drawtext.c:27</a></div></div>
<div class="ttc" id="aa00026_html_af5361d8c9ee2d1ddd9b99a8e597ed6d6"><div class="ttname"><a href="a00026.html#af5361d8c9ee2d1ddd9b99a8e597ed6d6">DeleteClientClipboardHandle</a></div><div class="ttdeci">BOOL DeleteClientClipboardHandle(HANDLE hobjDelete, DWORD dwFormat)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00222">client.c:222</a></div></div>
<div class="ttc" id="aa00335_html_a418ea2b595cdbc241b62a388e2dcf50b"><div class="ttname"><a href="a00335.html#a418ea2b595cdbc241b62a388e2dcf50b">SFI__REGISTERLOGONPROCESS</a></div><div class="ttdeci">#define SFI__REGISTERLOGONPROCESS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00021">cscall.h:21</a></div></div>
<div class="ttc" id="aa01953_html_acc7a89b13606bb910e8e8f2f71663931"><div class="ttname"><a href="a01953.html#acc7a89b13606bb910e8e8f2f71663931">_RESCALLS::pfnLoadResource</a></div><div class="ttdeci">PFNLOAD pfnLoadResource</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01089">usercli.h:1089</a></div></div>
<div class="ttc" id="aa00026_html_ae120b606a547d47bb2b247390cd99e34"><div class="ttname"><a href="a00026.html#ae120b606a547d47bb2b247390cd99e34">szPreLoadSeq</a></div><div class="ttdeci">CONST WCHAR szPreLoadSeq[]</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03374">client.c:3374</a></div></div>
<div class="ttc" id="aa00026_html_a13b3159b78c3ae9b626dac0705adc748"><div class="ttname"><a href="a00026.html#a13b3159b78c3ae9b626dac0705adc748">PHANDLENODE</a></div><div class="ttdeci">HANDLENODE * PHANDLENODE</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00212">client.c:212</a></div></div>
<div class="ttc" id="aa01793_html_aa4f7048f228daa9ebd1e06956b7a67f8"><div class="ttname"><a href="a01793.html#aa4f7048f228daa9ebd1e06956b7a67f8">_HANDLENODE::pnext</a></div><div class="ttdeci">struct _HANDLENODE * pnext</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00206">client.c:206</a></div></div>
<div class="ttc" id="aa00335_html_aae0ae6fe77a682940a8f2a239a57b24d"><div class="ttname"><a href="a00335.html#aae0ae6fe77a682940a8f2a239a57b24d">SFI_XXXFLASHWINDOW</a></div><div class="ttdeci">#define SFI_XXXFLASHWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00044">cscall.h:44</a></div></div>
<div class="ttc" id="aa00371_html_a41f433389f20db57f042022a662e96de"><div class="ttname"><a href="a00371.html#a41f433389f20db57f042022a662e96de">RIP_WARNING</a></div><div class="ttdeci">#define RIP_WARNING</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00029">winerrp.h:29</a></div></div>
<div class="ttc" id="aa00335_html_a4052624e3f410fad6d191edfc6f6df16"><div class="ttname"><a href="a00335.html#a4052624e3f410fad6d191edfc6f6df16">SFI__SETPROGMANWINDOW</a></div><div class="ttdeci">#define SFI__SETPROGMANWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00063">cscall.h:63</a></div></div>
<div class="ttc" id="aa00716_html_ac7b5fb8555805e7e7c11b30491a324f7"><div class="ttname"><a href="a00716.html#ac7b5fb8555805e7e7c11b30491a324f7">cy</a></div><div class="ttdeci">int cy[5]</div><div class="ttdef"><b>Definition:</b> <a href="a00716_source.html#l00456">inctlpan.c:456</a></div></div>
<div class="ttc" id="aa00335_html_a023d9a9b32b7e9d73d840a19fbe5b1ef"><div class="ttname"><a href="a00335.html#a023d9a9b32b7e9d73d840a19fbe5b1ef">SFI_XXXREALIZEPALETTE</a></div><div class="ttdeci">#define SFI_XXXREALIZEPALETTE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00046">cscall.h:46</a></div></div>
<div class="ttc" id="aa00362_html_a0b2d5f1d4b96dd098bb7e3db736382b2"><div class="ttname"><a href="a00362.html#a0b2d5f1d4b96dd098bb7e3db736382b2">NtUserCallNoParamTranslate</a></div><div class="ttdeci">DWORD NtUserCallNoParamTranslate(IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03232">kernel/ntstubs.c:3232</a></div></div>
<div class="ttc" id="aa02533_html_a1245271e4507fcd19b5fa4a4c000bd3a"><div class="ttname"><a href="a02533.html#a1245271e4507fcd19b5fa4a4c000bd3a">tagSETCLIPBDATA::fIncSerialNumber</a></div><div class="ttdeci">BOOL fIncSerialNumber</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01118">user.h:1118</a></div></div>
<div class="ttc" id="aa00335_html_acbb39a6ebed65bc751d431ab823ad8ef"><div class="ttname"><a href="a00335.html#acbb39a6ebed65bc751d431ab823ad8ef">SFI__GETQUEUESTATUS</a></div><div class="ttdeci">#define SFI__GETQUEUESTATUS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00014">cscall.h:14</a></div></div>
<div class="ttc" id="aa00026_html_a5d3ce9a9c27f144a237797121474dbee"><div class="ttname"><a href="a00026.html#a5d3ce9a9c27f144a237797121474dbee">gfLogonProcess</a></div><div class="ttdeci">BOOL gfLogonProcess</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00032">client.c:32</a></div></div>
<div class="ttc" id="aa00335_html_aef7c8685e52b7383afab2f4c172ed0f4"><div class="ttname"><a href="a00335.html#aef7c8685e52b7383afab2f4c172ed0f4">SFI_XXXENABLEWINDOW</a></div><div class="ttdeci">#define SFI_XXXENABLEWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00043">cscall.h:43</a></div></div>
<div class="ttc" id="aa01889_html_a2d22bfa9dcbd27c904993db8e1a916db"><div class="ttname"><a href="a01889.html#a2d22bfa9dcbd27c904993db8e1a916db">tagCBox::spwndEdit</a></div><div class="ttdeci">struct tagWND * spwndEdit</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l00461">usercli.h:461</a></div></div>
<div class="ttc" id="aa00335_html_a2265f6e381a2db2075e6c45cd6033f8a"><div class="ttname"><a href="a00335.html#a2265f6e381a2db2075e6c45cd6033f8a">SFI__DEREGISTERSHELLHOOKWINDOW</a></div><div class="ttdeci">#define SFI__DEREGISTERSHELLHOOKWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00065">cscall.h:65</a></div></div>
<div class="ttc" id="aa00362_html_ab64eb963b74811908a5b9bc99d77b8ac"><div class="ttname"><a href="a00362.html#ab64eb963b74811908a5b9bc99d77b8ac">NtUserCallNoParam</a></div><div class="ttdeci">DWORD NtUserCallNoParam(IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03204">kernel/ntstubs.c:3204</a></div></div>
<div class="ttc" id="aa02529_html_ab7d6ab755a202c8facb089d6377ab9d7"><div class="ttname"><a href="a02529.html#ab7d6ab755a202c8facb089d6377ab9d7">tagGETCLIPBDATA::fGlobalHandle</a></div><div class="ttdeci">BOOL fGlobalHandle</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01106">user.h:1106</a></div></div>
<div class="ttc" id="aa00941_html_ab5fefa29de8bde48a74efa8d838bf2d7"><div class="ttname"><a href="a00941.html#ab5fefa29de8bde48a74efa8d838bf2d7">MultiByteToWideChar</a></div><div class="ttdeci">int MultiByteToWideChar(UINT CodePage, DWORD dwFlags, LPCSTR lpMultiByteStr, int cchMultiByte, LPWSTR lpWideCharStr, int cchWideChar)</div></div>
<div class="ttc" id="aa00362_html_af4a9d9de6255064914dc8916a47063c8"><div class="ttname"><a href="a00362.html#af4a9d9de6255064914dc8916a47063c8">NtUserGetMenuIndex</a></div><div class="ttdeci">DWORD NtUserGetMenuIndex(IN HMENU hMenu, IN HMENU hSubMenu)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03176">kernel/ntstubs.c:3176</a></div></div>
<div class="ttc" id="aa00335_html_a51e678f2f093e2a3b8a82294784fdead"><div class="ttname"><a href="a00335.html#a51e678f2f093e2a3b8a82294784fdead">SFI__REGISTERSHELLHOOKWINDOW</a></div><div class="ttdeci">#define SFI__REGISTERSHELLHOOKWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00064">cscall.h:64</a></div></div>
<div class="ttc" id="aa00026_html_a72f4722e49f0e9590c8abe8395d82c17"><div class="ttname"><a href="a00026.html#a72f4722e49f0e9590c8abe8395d82c17">RegisterUserHungAppHandlers</a></div><div class="ttdeci">BOOL RegisterUserHungAppHandlers(PFNW32ET pfnW32EndTask, HANDLE hEventWowExec)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l02860">client.c:2860</a></div></div>
<div class="ttc" id="aa00335_html_a96b9c8a6274a0299a507ec1fdba997ae"><div class="ttname"><a href="a00335.html#a96b9c8a6274a0299a507ec1fdba997ae">SFI_CURRENTTASKLOCK</a></div><div class="ttdeci">#define SFI_CURRENTTASKLOCK</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00036">cscall.h:36</a></div></div>
<div class="ttc" id="aa00020_html_a8ecd4816919d5cbc8021d828733d0aef"><div class="ttname"><a href="a00020.html#a8ecd4816919d5cbc8021d828733d0aef">pfnWowCBStoreHandle</a></div><div class="ttdeci">PFNWOWCBSTOREHANDLE pfnWowCBStoreHandle</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00142">clglobal.c:142</a></div></div>
<div class="ttc" id="aa00335_html_aecbd2d63d2ce71da261593c025b44aa3"><div class="ttname"><a href="a00335.html#aecbd2d63d2ce71da261593c025b44aa3">SFI__SHOWCURSOR</a></div><div class="ttdeci">#define SFI__SHOWCURSOR</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00031">cscall.h:31</a></div></div>
<div class="ttc" id="aa01793_html_aecfdce9d32ae9924030fa8544ab83022"><div class="ttname"><a href="a01793.html#aecfdce9d32ae9924030fa8544ab83022">_HANDLENODE::fmt</a></div><div class="ttdeci">UINT fmt</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00207">client.c:207</a></div></div>
<div class="ttc" id="aa00362_html_a8d69ef3a49eb16da80967dbabaf5dbb3"><div class="ttname"><a href="a00362.html#a8d69ef3a49eb16da80967dbabaf5dbb3">NtUserDrawIconEx</a></div><div class="ttdeci">BOOL NtUserDrawIconEx(IN HDC hdc, IN int x, IN int y, IN HICON hicon, IN int cx, IN int cy, IN UINT istepIfAniCur, IN HBRUSH hbrush, IN UINT diFlags, IN BOOL fMeta, OUT DRAWICONEXDATA *pdid)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01285">kernel/ntstubs.c:1285</a></div></div>
<div class="ttc" id="aa00362_html_a49c8a03b7207f4e1558285a15ae931ce"><div class="ttname"><a href="a00362.html#a49c8a03b7207f4e1558285a15ae931ce">NtUserGetClipboardData</a></div><div class="ttdeci">HANDLE NtUserGetClipboardData(IN UINT fmt, OUT PGETCLIPBDATA pgcd)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l02812">kernel/ntstubs.c:2812</a></div></div>
<div class="ttc" id="aa02553_html_ab51f0b363324b2cf09057a4c55d5100f"><div class="ttname"><a href="a02553.html#ab51f0b363324b2cf09057a4c55d5100f">_HANDLEENTRY::bType</a></div><div class="ttdeci">BYTE bType</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01168">user.h:1168</a></div></div>
<div class="ttc" id="aa00020_html_a92f0041d2aad1d7a082cd02b08b2eef3"><div class="ttname"><a href="a00020.html#a92f0041d2aad1d7a082cd02b08b2eef3">pfnWowSetFakeDialogClass</a></div><div class="ttdeci">PFNWOWSETFAKEDIALOGCLASS pfnWowSetFakeDialogClass</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00140">clglobal.c:140</a></div></div>
<div class="ttc" id="aa00020_html_a5ca751ac4b273a98f04a83917c71af06"><div class="ttname"><a href="a00020.html#a5ca751ac4b273a98f04a83917c71af06">pfnWowEmptyClipBoard</a></div><div class="ttdeci">PFNEMPTYCB pfnWowEmptyClipBoard</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00138">clglobal.c:138</a></div></div>
<div class="ttc" id="aa00293_html_a41d387d1b2d42169cbaa2092c8a02abf"><div class="ttname"><a href="a00293.html#a41d387d1b2d42169cbaa2092c8a02abf">ValidateHwnd</a></div><div class="ttdeci">#define ValidateHwnd(hwnd)</div><div class="ttdef"><b>Definition:</b> <a href="a00293_source.html#l00090">immcli.h:90</a></div></div>
<div class="ttc" id="aa00335_html_a33710f2df4e356cbee208568e2df2e0e"><div class="ttname"><a href="a00335.html#a33710f2df4e356cbee208568e2df2e0e">SFI__SETTASKMANWINDOW</a></div><div class="ttdeci">#define SFI__SETTASKMANWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00062">cscall.h:62</a></div></div>
<div class="ttc" id="aa00362_html_a5f9f8382fc9fb580a55c96016dcf4f18"><div class="ttname"><a href="a00362.html#a5f9f8382fc9fb580a55c96016dcf4f18">NtUserTranslateAccelerator</a></div><div class="ttdeci">int NtUserTranslateAccelerator(IN HWND hwnd, IN HACCEL hAccTable, IN LPMSG lpMsg)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01601">kernel/ntstubs.c:1601</a></div></div>
<div class="ttc" id="aa00026_html_adc89923b3853de7ea5c658831193f408"><div class="ttname"><a href="a00026.html#adc89923b3853de7ea5c658831193f408">DirectedYield</a></div><div class="ttdeci">void DirectedYield(DWORD dwThreadId)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l02541">client.c:2541</a></div></div>
<div class="ttc" id="aa00026_html_afeedc7ce2c7778f420d0357f1ef24e6e"><div class="ttname"><a href="a00026.html#afeedc7ce2c7778f420d0357f1ef24e6e">GetActiveKeyboardName</a></div><div class="ttdeci">VOID GetActiveKeyboardName(LPWSTR lpszName)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03175">client.c:3175</a></div></div>
<div class="ttc" id="aa00362_html_a46d280dea6feb9d7ee1540e34eee4e26"><div class="ttname"><a href="a00362.html#a46d280dea6feb9d7ee1540e34eee4e26">NtUserCallOneParamTranslate</a></div><div class="ttdeci">DWORD NtUserCallOneParamTranslate(IN DWORD dwParam, IN DWORD xpfnProc)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l03266">kernel/ntstubs.c:3266</a></div></div>
<div class="ttc" id="aa00335_html_a6c2e9325edd797f44acf500abf8933d4"><div class="ttname"><a href="a00335.html#a6c2e9325edd797f44acf500abf8933d4">SFI_XXXUPDATEWINDOW</a></div><div class="ttdeci">#define SFI_XXXUPDATEWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00057">cscall.h:57</a></div></div>
<div class="ttc" id="aa00020_html_a8d17cc38f593b0615e76437cb2c2a587"><div class="ttname"><a href="a00020.html#a8d17cc38f593b0615e76437cb2c2a587">pfnLocalFree</a></div><div class="ttdeci">PFNLFREE pfnLocalFree</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00133">clglobal.c:133</a></div></div>
<div class="ttc" id="aa00020_html_afb0ebf0c66010cf139ab4f7a9d4542b1"><div class="ttname"><a href="a00020.html#afb0ebf0c66010cf139ab4f7a9d4542b1">pfnWowWndProcEx</a></div><div class="ttdeci">PFNWOWWNDPROCEX pfnWowWndProcEx</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00139">clglobal.c:139</a></div></div>
<div class="ttc" id="aa00026_html_a37382336eed0bd5a1649061ecdb801a8"><div class="ttname"><a href="a00026.html#a37382336eed0bd5a1649061ecdb801a8">WOWLoadBitmapA</a></div><div class="ttdeci">HBITMAP WOWLoadBitmapA(HINSTANCE hmod, LPCSTR lpName, LPBYTE pResData, DWORD cbResData)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l03954">clres.c:3954</a></div></div>
<div class="ttc" id="aa00026_html_a129c6ec17fae777c58c438effb08b90d"><div class="ttname"><a href="a00026.html#a129c6ec17fae777c58c438effb08b90d">CCH_KL_ID</a></div><div class="ttdeci">#define CCH_KL_ID</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00030">client.c:30</a></div></div>
<div class="ttc" id="aa00335_html_a6351625761ce4edc1fc3e000ca54c4de"><div class="ttname"><a href="a00335.html#a6351625761ce4edc1fc3e000ca54c4de">SFI_CLEARWINDOWSTATE</a></div><div class="ttdeci">#define SFI_CLEARWINDOWSTATE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00002">cscall.h:2</a></div></div>
<div class="ttc" id="aa00335_html_a04c428bda8b4629a3ae053ee17cfab88"><div class="ttname"><a href="a00335.html#a04c428bda8b4629a3ae053ee17cfab88">SFI__SWAPMOUSEBUTTON</a></div><div class="ttdeci">#define SFI__SWAPMOUSEBUTTON</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00033">cscall.h:33</a></div></div>
<div class="ttc" id="aa00335_html_a57718972e40716ce0f5aa431b3ac4a53"><div class="ttname"><a href="a00335.html#a57718972e40716ce0f5aa431b3ac4a53">SFI__SETCURSORPOS</a></div><div class="ttdeci">#define SFI__SETCURSORPOS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00027">cscall.h:27</a></div></div>
<div class="ttc" id="aa00335_html_a0e08e27fcd3016c96563aa0cb1406bac"><div class="ttname"><a href="a00335.html#a0e08e27fcd3016c96563aa0cb1406bac">SFI_XXXCLOSECLIPBOARD</a></div><div class="ttdeci">#define SFI_XXXCLOSECLIPBOARD</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00051">cscall.h:51</a></div></div>
<div class="ttc" id="aa01793_html_ab7d6ab755a202c8facb089d6377ab9d7"><div class="ttname"><a href="a01793.html#ab7d6ab755a202c8facb089d6377ab9d7">_HANDLENODE::fGlobalHandle</a></div><div class="ttdeci">BOOL fGlobalHandle</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00210">client.c:210</a></div></div>
<div class="ttc" id="aa00362_html_ac6f3110cb4f124f07183cd4d9b763119"><div class="ttname"><a href="a00362.html#ac6f3110cb4f124f07183cd4d9b763119">NtUserSetClipboardData</a></div><div class="ttdeci">BOOL NtUserSetClipboardData(IN UINT wFmt, IN HANDLE hMem, IN PSETCLIPBDATA scd)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l02452">kernel/ntstubs.c:2452</a></div></div>
<div class="ttc" id="aa00335_html_adad3a707c2e35ffb29e43af850ccdd15"><div class="ttname"><a href="a00335.html#adad3a707c2e35ffb29e43af850ccdd15">SFI_XXXSWITCHTOTHISWINDOW</a></div><div class="ttdeci">#define SFI_XXXSWITCHTOTHISWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00072">cscall.h:72</a></div></div>
<div class="ttc" id="aa03608_html_afd1a0e78d1f88954d93e48ab3821781f"><div class="ttname"><a href="a03608.html#afd1a0e78d1f88954d93e48ab3821781f">UINT</a></div><div class="ttdeci">typedef UINT(FAR WINAPI *MSGSOUNDPROC)()</div></div>
<div class="ttc" id="aa00020_html_a069abfb17a960db1d2b87b3d08f82b44"><div class="ttname"><a href="a00020.html#a069abfb17a960db1d2b87b3d08f82b44">pfnGetExpWinVer</a></div><div class="ttdeci">PFNGETEXPWINVER pfnGetExpWinVer</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00134">clglobal.c:134</a></div></div>
<div class="ttc" id="aa00335_html_a813a94ea49fcd103f8b49c7e43dbe71c"><div class="ttname"><a href="a00335.html#a813a94ea49fcd103f8b49c7e43dbe71c">SFI_XXXARRANGEICONICWINDOWS</a></div><div class="ttdeci">#define SFI_XXXARRANGEICONICWINDOWS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00038">cscall.h:38</a></div></div>
<div class="ttc" id="aa00026_html_aac98e7e264e1a510f68f831a29570a9b"><div class="ttname"><a href="a00026.html#aac98e7e264e1a510f68f831a29570a9b">CommonCreateDesktop</a></div><div class="ttdeci">HDESK CommonCreateDesktop(PUNICODE_STRING pstrDesktop, PUNICODE_STRING pstrDevice, LPDEVMODEW pDevmode, DWORD dwFlags, ACCESS_MASK amRequest, PSECURITY_ATTRIBUTES lpsa)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01982">client.c:1982</a></div></div>
<div class="ttc" id="aa00362_html_a8c789c94f5d786b6ee30f9b02fffc2f5"><div class="ttname"><a href="a00362.html#a8c789c94f5d786b6ee30f9b02fffc2f5">NtUserEndDeferWindowPosEx</a></div><div class="ttdeci">BOOL NtUserEndDeferWindowPosEx(IN HDWP hWinPosInfo, IN BOOL fAsync)</div><div class="ttdef"><b>Definition:</b> <a href="a03614_source.html#l01444">kernel/ntstubs.c:1444</a></div></div>
<div class="ttc" id="aa00200_html_a94ff0ec22950f82017c679c1e1a2054c"><div class="ttname"><a href="a00200.html#a94ff0ec22950f82017c679c1e1a2054c">CascadeWindows</a></div><div class="ttdeci">WORD CascadeWindows(HWND hwndParent, UINT flags, CONST RECT *lpRect, UINT chwnd, CONST HWND *ahwnd)</div><div class="ttdef"><b>Definition:</b> <a href="a00200_source.html#l00714">mdiwin.c:714</a></div></div>
<div class="ttc" id="aa01889_html"><div class="ttname"><a href="a01889.html">tagCBox</a></div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l00449">usercli.h:449</a></div></div>
<div class="ttc" id="aa00335_html_a78003eec13048eac551af4befb462f29"><div class="ttname"><a href="a00335.html#a78003eec13048eac551af4befb462f29">SFI__UNHOOKWINDOWSHOOK</a></div><div class="ttdeci">#define SFI__UNHOOKWINDOWSHOOK</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00034">cscall.h:34</a></div></div>
<div class="ttc" id="aa02517_html_a42d641821b5c3c8a4f9dd0328dabfc8a"><div class="ttname"><a href="a02517.html#a42d641821b5c3c8a4f9dd0328dabfc8a">_WNDMSG::maxMsgs</a></div><div class="ttdeci">UINT maxMsgs</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01054">user.h:1054</a></div></div>
<div class="ttc" id="aa01953_html_a81d339617d33dcc8558d1f53438dba19"><div class="ttname"><a href="a01953.html#a81d339617d33dcc8558d1f53438dba19">_RESCALLS::pfnFreeResource</a></div><div class="ttdeci">PFNFREE pfnFreeResource</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01092">usercli.h:1092</a></div></div>
<div class="ttc" id="aa00020_html_a5860944f5496a9daf7f7a4c406b2d43e"><div class="ttname"><a href="a00020.html#a5860944f5496a9daf7f7a4c406b2d43e">pfnLocalLock</a></div><div class="ttdeci">PFNLLOCK pfnLocalLock</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00130">clglobal.c:130</a></div></div>
<div class="ttc" id="aa02469_html_ad36501a70b25e18bcf48dd6e03392305"><div class="ttname"><a href="a02469.html#ad36501a70b25e18bcf48dd6e03392305">_DRAWICONEXDATA::cy</a></div><div class="ttdeci">int cy</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00337">user.h:337</a></div></div>
<div class="ttc" id="aa00026_html_a246cef21d8f236cea2d990af9baf5772"><div class="ttname"><a href="a00026.html#a246cef21d8f236cea2d990af9baf5772">SW_FLAG_NRC</a></div><div class="ttdeci">#define SW_FLAG_NRC</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l01280">client.c:1280</a></div></div>
<div class="ttc" id="aa02521_html_aba571224616f70b9a072015bc9873676"><div class="ttname"><a href="a02521.html#aba571224616f70b9a072015bc9873676">tagSHAREDINFO::aheList</a></div><div class="ttdeci">struct _HANDLEENTRY * aheList</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01060">user.h:1060</a></div></div>
<div class="ttc" id="aa00371_html_adbdd8355d15a97b6f3a9e4766e6a2cc1"><div class="ttname"><a href="a00371.html#adbdd8355d15a97b6f3a9e4766e6a2cc1">RIPERR1</a></div><div class="ttdeci">#define RIPERR1(idErr, flags, szFmt, p1)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00120">winerrp.h:120</a></div></div>
<div class="ttc" id="aa00026_html_a71c35d9f06f56484a40c1ba2a9536ce7"><div class="ttname"><a href="a00026.html#a71c35d9f06f56484a40c1ba2a9536ce7">WOWGetIdFromDirectory</a></div><div class="ttdeci">int WOWGetIdFromDirectory(PBYTE presbits, UINT rt)</div><div class="ttdef"><b>Definition:</b> <a href="a00239_source.html#l00120">rtlres.c:120</a></div></div>
<div class="ttc" id="aa00020_html_ac188119d2ba17e059f3822de9f7a110a"><div class="ttname"><a href="a00020.html#ac188119d2ba17e059f3822de9f7a110a">gcxGray</a></div><div class="ttdeci">int gcxGray</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00103">clglobal.c:103</a></div></div>
<div class="ttc" id="aa02581_html_a6171c9000ea2060597a9bcf498ee0316"><div class="ttname"><a href="a02581.html#a6171c9000ea2060597a9bcf498ee0316">tagWND::spwndChild</a></div><div class="ttdeci">struct tagWND * spwndChild</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01393">user.h:1393</a></div></div>
<div class="ttc" id="aa00335_html_a5514473031dce16f7e6b8c3d240c27a4"><div class="ttname"><a href="a00335.html#a5514473031dce16f7e6b8c3d240c27a4">SFI__CREATEPOPUPMENU</a></div><div class="ttdeci">#define SFI__CREATEPOPUPMENU</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00005">cscall.h:5</a></div></div>
<div class="ttc" id="aa00026_html_a77cef7c8f3b2f972456755554e63c192"><div class="ttname"><a href="a00026.html#a77cef7c8f3b2f972456755554e63c192">szKLFile</a></div><div class="ttdeci">CONST WCHAR szKLFile[]</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03409">client.c:3409</a></div></div>
<div class="ttc" id="aa00935_html_a6f9d1e9b327899127c080496900d48d9"><div class="ttname"><a href="a00935.html#a6f9d1e9b327899127c080496900d48d9">SetRectEmpty</a></div><div class="ttdeci">BOOL APIENTRY SetRectEmpty(LPRECT prc)</div><div class="ttdef"><b>Definition:</b> <a href="a00935_source.html#l00414">rect.c:414</a></div></div>
<div class="ttc" id="aa02477_html"><div class="ttname"><a href="a02477.html">_CLIENTINFO</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00372">user.h:372</a></div></div>
<div class="ttc" id="aa00335_html_a17bb1ace0b43893492270b7c5a56976c"><div class="ttname"><a href="a00335.html#a17bb1ace0b43893492270b7c5a56976c">SFI__POSTQUITMESSAGE</a></div><div class="ttdeci">#define SFI__POSTQUITMESSAGE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00020">cscall.h:20</a></div></div>
<div class="ttc" id="aa00047_html_a7334e435e4e4218b5b4cdc551dafec76"><div class="ttname"><a href="a00047.html#a7334e435e4e4218b5b4cdc551dafec76">LoadBmp</a></div><div class="ttdeci">HBITMAP LoadBmp(HINSTANCE hmod, LPCWSTR lpName, int cxDesired, int cyDesired, UINT flags)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l01733">clres.c:1733</a></div></div>
<div class="ttc" id="aa00335_html_a41ce863ee77fba96a4353d0a5a4100d2"><div class="ttname"><a href="a00335.html#a41ce863ee77fba96a4353d0a5a4100d2">SFI_XXXSHOWOWNEDPOPUPS</a></div><div class="ttdeci">#define SFI_XXXSHOWOWNEDPOPUPS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00055">cscall.h:55</a></div></div>
<div class="ttc" id="aa02609_html_ae973a44948baa25dc8763905ddfa0b98"><div class="ttname"><a href="a02609.html#ae973a44948baa25dc8763905ddfa0b98">tagDESKTOPINFO::spwndShell</a></div><div class="ttdeci">struct tagWND * spwndShell</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01606">user.h:1606</a></div></div>
<div class="ttc" id="aa00020_html_a7a1070e7875c40e2adfec6154f1c1ab1"><div class="ttname"><a href="a00020.html#a7a1070e7875c40e2adfec6154f1c1ab1">pfnLocalReAlloc</a></div><div class="ttdeci">PFNLREALLOC pfnLocalReAlloc</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00129">clglobal.c:129</a></div></div>
<div class="ttc" id="aa00962_html_a78bf4b8bea0276f89c546081d1f8495d"><div class="ttname"><a href="a00962.html#a78bf4b8bea0276f89c546081d1f8495d">ID</a></div><div class="ttdeci">#define ID(id)</div><div class="ttdef"><b>Definition:</b> <a href="a00962_source.html#l00006">usrbench.h:6</a></div></div>
<div class="ttc" id="aa01893_html"><div class="ttname"><a href="a01893.html">tagCOMBOWND</a></div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l00499">usercli.h:499</a></div></div>
<div class="ttc" id="aa01793_html"><div class="ttname"><a href="a01793.html">_HANDLENODE</a></div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00205">client.c:205</a></div></div>
<div class="ttc" id="aa00026_html_a7f200b0221109fec737f647797c02e26"><div class="ttname"><a href="a00026.html#a7f200b0221109fec737f647797c02e26">GetClipboardCodePage</a></div><div class="ttdeci">UINT GetClipboardCodePage(LCID, LCTYPE)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00672">client.c:672</a></div></div>
<div class="ttc" id="aa00257_html_a7c0acc91914e5c12695291fc37af2d6f"><div class="ttname"><a href="a00257.html#a7c0acc91914e5c12695291fc37af2d6f">RegisterClassExWOWA</a></div><div class="ttdeci">ATOM RegisterClassExWOWA(PWNDCLASSEXA lpWndClass, LPDWORD pdwWOWstuff, PROC lpfnWorker, WORD fnid)</div></div>
<div class="ttc" id="aa00026_html_ace44ba95256a8598283b551b22699143"><div class="ttname"><a href="a00026.html#ace44ba95256a8598283b551b22699143">uCachedCP</a></div><div class="ttdeci">static UINT uCachedCP</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00936">client.c:936</a></div></div>
<div class="ttc" id="aa00020_html_ad760da1dd81d9e84dee607d18edfde39"><div class="ttname"><a href="a00020.html#ad760da1dd81d9e84dee607d18edfde39">gpsi</a></div><div class="ttdeci">PSERVERINFO gpsi</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00039">clglobal.c:39</a></div></div>
<div class="ttc" id="aa02517_html_a2d6495c3cf7fb3fbdd27638ad3de548e"><div class="ttname"><a href="a02517.html#a2d6495c3cf7fb3fbdd27638ad3de548e">_WNDMSG::abMsgs</a></div><div class="ttdeci">BYTE * abMsgs</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01055">user.h:1055</a></div></div>
<div class="ttc" id="aa00047_html_a8df8eb9940bc362bd50ffc2aa0d7290f"><div class="ttname"><a href="a00047.html#a8df8eb9940bc362bd50ffc2aa0d7290f">ConvertDIBBitmap</a></div><div class="ttdeci">HBITMAP ConvertDIBBitmap(IN UPBITMAPINFOHEADER upbih, IN DWORD cxDesired, IN DWORD cyDesired, IN UINT LR_flags, OUT OPTIONAL LPBITMAPINFOHEADER *lplpbih, IN OUT OPTIONAL LPSTR *lplpBits)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l03488">clres.c:3488</a></div></div>
<div class="ttc" id="aa00335_html_a2071088a6d14e97d135ac6da639cab87"><div class="ttname"><a href="a00335.html#a2071088a6d14e97d135ac6da639cab87">SFI_XXXCLOSEWINDOW</a></div><div class="ttdeci">#define SFI_XXXCLOSEWINDOW</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00039">cscall.h:39</a></div></div>
<div class="ttc" id="aa00335_html_a0434f204654f9d3efa1c9b4368553576"><div class="ttname"><a href="a00335.html#a0434f204654f9d3efa1c9b4368553576">SFI__ENUMCLIPBOARDFORMATS</a></div><div class="ttdeci">#define SFI__ENUMCLIPBOARDFORMATS</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00009">cscall.h:9</a></div></div>
<div class="ttc" id="aa02521_html_a6b55f74fa034e288f0fa05c160738484"><div class="ttname"><a href="a02521.html#a6b55f74fa034e288f0fa05c160738484">tagSHAREDINFO::DefWindowSpecMsgs</a></div><div class="ttdeci">WNDMSG DefWindowSpecMsgs</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01071">user.h:1071</a></div></div>
<div class="ttc" id="aa03611_html_a8391278e2e3d2d35d7651ece95415a14"><div class="ttname"><a href="a03611.html#a8391278e2e3d2d35d7651ece95415a14">WOWFindWindow</a></div><div class="ttdeci">HWND WOWFindWindow(LPCSTR pClassName, LPCSTR pWindowName)</div><div class="ttdef"><b>Definition:</b> <a href="a03611_source.html#l00036">client/ntstubs.c:36</a></div></div>
<div class="ttc" id="aa00020_html_abaa886e5d183510c7ba0aa32e8b083d3"><div class="ttname"><a href="a00020.html#abaa886e5d183510c7ba0aa32e8b083d3">gcsHdc</a></div><div class="ttdeci">CRITICAL_SECTION gcsHdc</div><div class="ttdef"><b>Definition:</b> <a href="a00020_source.html#l00096">clglobal.c:96</a></div></div>
<div class="ttc" id="aa02469_html_a9dc9908a9040a39812afd6de92ab138d"><div class="ttname"><a href="a02469.html#a9dc9908a9040a39812afd6de92ab138d">_DRAWICONEXDATA::hbmColor</a></div><div class="ttdeci">HBITMAP hbmColor</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00335">user.h:335</a></div></div>
<div class="ttc" id="aa00047_html_aa9436fb2e24847a8664295397c96306b"><div class="ttname"><a href="a00047.html#aa9436fb2e24847a8664295397c96306b">CreateIconIndirect</a></div><div class="ttdeci">HICON WINAPI CreateIconIndirect(PICONINFO piconinfo)</div><div class="ttdef"><b>Definition:</b> <a href="a00047_source.html#l01135">clres.c:1135</a></div></div>
<div class="ttc" id="aa00335_html_ac7405ebaeecc3cdf58f8f1e26902467e"><div class="ttname"><a href="a00335.html#ac7405ebaeecc3cdf58f8f1e26902467e">SFI__DESTROYCARET</a></div><div class="ttdeci">#define SFI__DESTROYCARET</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00008">cscall.h:8</a></div></div>
<div class="ttc" id="aa02469_html"><div class="ttname"><a href="a02469.html">_DRAWICONEXDATA</a></div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00333">user.h:333</a></div></div>
<div class="ttc" id="aa00026_html_af9d5546ba0d4af57ff5515f14371a7f1"><div class="ttname"><a href="a00026.html#af9d5546ba0d4af57ff5515f14371a7f1">pwszKLLibSafety</a></div><div class="ttdeci">CONST LPWSTR pwszKLLibSafety</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l00026">client.c:26</a></div></div>
<div class="ttc" id="aa02469_html_af905a9989361d094908ad04e08f6429d"><div class="ttname"><a href="a02469.html#af905a9989361d094908ad04e08f6429d">_DRAWICONEXDATA::cx</a></div><div class="ttdeci">int cx</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l00336">user.h:336</a></div></div>
<div class="ttc" id="aa02529_html_a13a9a2379d37bf649a413fc8dd1b199c"><div class="ttname"><a href="a02529.html#a13a9a2379d37bf649a413fc8dd1b199c">tagGETCLIPBDATA::hLocale</a></div><div class="ttdeci">HANDLE hLocale</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01107">user.h:1107</a></div></div>
<div class="ttc" id="aa00335_html_a1ba99d2657ad5b948d2673e98120301a"><div class="ttname"><a href="a00335.html#a1ba99d2657ad5b948d2673e98120301a">SFI__REPLYMESSAGE</a></div><div class="ttdeci">#define SFI__REPLYMESSAGE</div><div class="ttdef"><b>Definition:</b> <a href="a00335_source.html#l00024">cscall.h:24</a></div></div>
<div class="ttc" id="aa00371_html_a002956db9fb529e159fb441f09f39b42"><div class="ttname"><a href="a00371.html#a002956db9fb529e159fb441f09f39b42">RIPNTERR0</a></div><div class="ttdeci">#define RIPNTERR0(idErr, flags, szFmt)</div><div class="ttdef"><b>Definition:</b> <a href="a00371_source.html#l00125">winerrp.h:125</a></div></div>
<div class="ttc" id="aa01889_html_a3d504d1fbd4e573e6e9c755e161af9e4"><div class="ttname"><a href="a01889.html#a3d504d1fbd4e573e6e9c755e161af9e4">tagCBox::fNoEdit</a></div><div class="ttdeci">UINT fNoEdit</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l00488">usercli.h:488</a></div></div>
<div class="ttc" id="aa01953_html_a9d3b4e93429fae456953debe600eccf3"><div class="ttname"><a href="a01953.html#a9d3b4e93429fae456953debe600eccf3">_RESCALLS::pfnUnlockResource</a></div><div class="ttdeci">PFNUNLOCK pfnUnlockResource</div><div class="ttdef"><b>Definition:</b> <a href="a00257_source.html#l01091">usercli.h:1091</a></div></div>
<div class="ttc" id="aa00026_html_aed7c462c6c2968b207b5cc5808996709"><div class="ttname"><a href="a00026.html#aed7c462c6c2968b207b5cc5808996709">szKLKey</a></div><div class="ttdeci">CONST WCHAR szKLKey[]</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03408">client.c:3408</a></div></div>
<div class="ttc" id="aa02513_html_a481a03e7eb24994f1eca28391f9b7c77"><div class="ttname"><a href="a02513.html#a481a03e7eb24994f1eca28391f9b7c77">tagSERVERINFO::cySysFontChar</a></div><div class="ttdeci">int cySysFontChar</div><div class="ttdef"><b>Definition:</b> <a href="a00365_source.html#l01014">user.h:1014</a></div></div>
<div class="ttc" id="aa00026_html_a76a56627afc69c00f014d1b508b37ab9"><div class="ttname"><a href="a00026.html#a76a56627afc69c00f014d1b508b37ab9">OpenKeyboardLayoutFile</a></div><div class="ttdeci">HANDLE OpenKeyboardLayoutFile(LPWSTR lpszKLName, UINT uFlags, PUINT poffTable, PUINT pKbdInputLocale)</div><div class="ttdef"><b>Definition:</b> <a href="a00026_source.html#l03413">client.c:3413</a></div></div>
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_885cc87fac2d91e269af0a5a959fa5f6.html">E:</a></li><li class="navelem"><a class="el" href="dir_4e091ed8704426a7a4980368ba259fde.html">git</a></li><li class="navelem"><a class="el" href="dir_cd70cb5eb491250157f2d55d3ff4b13e.html">backup</a></li><li class="navelem"><a class="el" href="dir_ba2b673b566ba104b956abdc6dec0552.html">org</a></li><li class="navelem"><a class="el" href="dir_5bb0003d7907b45051943541418399f5.html">ntuser</a></li><li class="navelem"><a class="el" href="dir_caf01b281dbc7d7ffe410ecf117b6142.html">client</a></li><li class="navelem"><a class="el" href="a00026.html">client.c</a></li>
    <li class="footer">制作者
    <a href="http://www.doxygen.org/index.html">
    <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.8.17 </li>
  </ul>
</div>
</body>
</html>
